«
PHP使用APC缓存优化PHP程序

时间:2008-5-31    作者:Deri    分类: 分享


   <p>  Alternative PHP Cache(APC)是 PHP 的一个免费公开的优化代码缓存。它用来提供免费,公开并且强健的架构来缓存和优化 PHP 的中间代码。</p><p>  在 Windows 下,APC 要求有 c:  mp 目录,并且该目录要对 Web 服务器进程可写。</p><p>  1. 安装:</p><p>  以PHP extension 形式安装.</p><p>  2. 配置</p><p>  apc.enabled    boolean</p><p>  apc.optimization  optimization</p><p>  选项在脚本中可以改变</p><p>  APC PHP.ini配置选项详解</p><code>[APC]<br />; Alternative PHP Cache 用于缓存和优化PHP中间代码apc.cache_by_default = On<br />;SYS<br />; 是否默认对所有文件启用缓冲。<br />; 若设为Off并与以加号开头的apc.filters指令一起用,则文件仅在匹配过滤器时才被缓存。<br />apc.enable_cli = Off<br />;SYS<br />; 是否为CLI版本启用APC功能,仅用于测试和调试目的才打开此指令。<br />apc.enabled = On<br />; 是否启用APC,如果APC被静态编译进PHP又想禁用它,这是唯一的办法。<br />apc.file_update_protection = 2<br />;SYS<br />; 当你在一个运行中的服务器上修改文件时,你应当执行原子操作。<br />; 也就是先写进一个临时文件,然后将该文件重命名(mv)到最终的名字。<br />; 文本编辑器以及 cp, tar 等程序却并不是这样操作的,从而导致有可能缓冲了残缺的文件。<br />; 默认值 2 表示在访问文件时如果发现修改时间距离访问时间小于 2 秒则不做缓冲。<br />; 那个不幸的访问者可能得到残缺的内容,但是这种坏影响却不会通过缓存扩大化。<br />; 如果你能确保所有的更新操作都是原子操作,那么可以用 0 关闭此特性。<br />; 如果你的系统由于大量的IO操作导致更新缓慢,你就需要增大此值。<br />apc.filters =<br />;SYS<br />; 一个以逗号分隔的POSIX扩展正则表达式列表。<br />; 如果源文件名与任意一个模式匹配,则该文件不被缓存。<br />; 注意,用来匹配的文件名是传递给include/require的文件名,而不是绝对路径。<br />; 如果正则表达式的第一个字符是"+"则意味着任何匹配表达式的文件会被缓存,<br />; 如果第一个字符是"-"则任何匹配项都不会被缓存。"-"是默认值,可以省略掉。<br />apc.ttl = 0<br />;SYS<br />; 缓存条目在缓冲区中允许逗留的秒数。0 表示永不超时。建议值为7200~36000。<br />; 设为 0 意味着缓冲区有可能被旧的缓存条目填满,从而导致无法缓存新条目。<br />apc.user_ttl = 0<br />;SYS<br />; 类似于apc.ttl,只是针对每个用户而言,建议值为7200~36000。<br />; 设为 0 意味着缓冲区有可能被旧的缓存条目填满,从而导致无法缓存新条目。<br />apc.gc_ttl = 3600<br />;SYS<br />; 缓存条目在垃圾回收表中能够存在的秒数。<br />; 此值提供了一个安全措施,即使一个服务器进程在执行缓存的源文件时崩溃,<br />; 而且该源文件已经被修改,为旧版本分配的内存也不会被回收,直到达到此TTL值为止。<br />; 设为零将禁用此特性。<br />apc.include_once_override = Off<br />;SYS<br />; 请保持为Off,否则可能导致意想不到的结果。<br />apc.max_file_size = 1M<br />;SYS<br />; 禁止大于此尺寸的文件被缓存。<br />apc.mmap_file_mask =<br />;SYS<br />; 如果使用