Alternative PHP Cache(APC)是 PHP 的一个免费公开的优化代码缓存。他用来提供免费,公开并且强健的架构来缓存和优化 PHP 的中间代码。
在 视窗系统 下,APC 需求有 c:\tmp 目录,并且该目录要对 Web 服务器进程可写。
1. 安装:
以PHP extension 形式安装.
2. 设置
apc.enabled boolean
apc.optimization optimization
选项在脚本中能改动
APC PHP.ini设置选项详解
[APC]
; Alternative PHP Cache 用于缓存和优化PHP中间代码
apc.cache_by_default = On
;SYS
; 是否默认对所有文件启用缓冲。
; 若设为Off并和以加号开头的apc.filters指令一起用,则文件仅在匹配过滤器时才被缓存。
apc.enable_cli = Off
;SYS
; 是否为CLI版本启用APC功能,仅用于测试和调试目的才打开此指令。
apc.enabled = On
; 是否启用APC,如果APC被静态编译进PHP又想禁用他,这是唯一的办法。
apc.file_update_protection = 2
;SYS
; 当你在一个运行中的服务器上修改文件时,你应当执行原子操作。
; 也就是先写进一个临时文件,然后将该文件重命名(mv)到最终的名字。
; 文本编辑器及 cp, tar 等程式却并不是这样操作的,从而导致有可能缓冲了残缺的文件。
; 默认值 2 表示在访问文件时如果发现修改时间距离访问时间小于 2 秒则不做缓冲。
; 那个不幸的访问者可能得到残缺的内容,不过这种坏影响却不会通过缓存扩大化。
; 如果你能确保所有的更新操作都是原子操作,那么能用 0 关闭此特性。
; 如果你的系统由于大量的IO操作导致更新缓慢,你就需要增大此值。
apc.filters =
;SYS
; 一个以逗号分隔的POSIX扩展正则表达式列表。
; 如果源文件名和任意一个模式匹配,则该文件不被缓存。
; 注意,用来匹配的文件名是传递给include/require的文件名,而不是绝对路径。
; 如果正则表达式的第一个字符是"+"则意味着所有匹配表达式的文件会被缓存,
; 如果第一个字符是"-"则所有匹配项都不会被缓存。"-"是默认值,能省略掉。
apc.ttl = 0
;SYS
; 缓存条目在缓冲区中允许逗留的秒数。0 表示永不超时。建议值为7200~36000。
; 设为 0 意味着缓冲区有可能被旧的缓存条目填满,从而导致无法缓存新条目。
apc.user_ttl = 0
;SYS
; 类似于apc.ttl,只是针对每个用户而言,建议值为7200~36000。
; 设为 0 意味着缓冲区有可能被旧的缓存条目填满,从而导致无法缓存新条目。
apc.gc_ttl = 3600
;SYS
; 缓存条目在垃圾回收表中能够存在的秒数。
; 此值提供了一个安全措施,即使一个服务器进程在执行缓存的源文件时崩溃,
; 而且该源文件已被修改,为旧版本分配的内存也不会被回收,直到达到此TTL值为止。
; 设为零将禁用此特性。
apc.include_once_override = Off
;SYS
; 请保持为Off,否则可能导致意想不到的结果。
apc.max_file_size = 1M
;SYS
; 禁止大于此尺寸的文件被缓存。
apc.mmap_file_mask =
;SYS
; 如果使用?enable-mmap(默认启用)为APC编译了MMAP支持,
; 这里的值就是传递给mmap模块的mktemp风格的文件掩码(建议值为"/tmp/apc.XXXXXX")。
; 该掩码用于决定内存映射区域是否要被file-backed或shared memory backed。
; 对于直接的file-backed内存映射,要设置成"/tmp/apc.XXXXXX"的样子(恰好6个X)。
; 要使用POSIX风格的shm_open/mmap就需要设置成"/apc.shm.XXXXXX"的样子。
; 你还能设为"/dev/zero"来为匿名映射的内存使用内核的"/dev/zero"接口。
; 不定义此指令则表示强制使用匿名映射。
apc.num_files_hint = 1000
;SYS
; Web服务器上可能被包含或被请求的不同源文件的大致数量(建议值为1024~4096)。
; 如果你不能确定,则设为 0 ;此设定主要用于拥有数千个源文件的站点。
apc.optimization = 0
; 优化级别(建议值为 0 ) 。
; 正整数值表示启用优化器,值越高则使用越激进的优化。
; 更高的值可能有非常有限的速度提升,但目前尚在试验中。
apc.report_autofilter = Off
;SYS
; 是否记录所有由于early/late binding原因而自动未被缓存的脚本。
apc.shm_segments = 1
;SYS
; 为编译器缓冲区分配的共享内存块数量(建议值为1)。
; 如果APC耗尽了共享内存,并且已将apc.shm_size指令设为系统允许的最大值,
; 你能尝试增大此值。
apc.shm_size = 30
;SYS
; 每个共享内存块的大小(以MB为单位,建议值为128~256)。
; 有些系统(包括大多数BSD变种)默认的共享内存块大小非常少。
apc.slam_defense = 0
;SYS(反对使用该指令,建议该用apc.write_lock指令)
; 在非常繁忙的服务器上,无论是启动服务还是修改文件,
; 都可能由于多个进程企图同时缓存一个文件而导致竞争条件。
; 这个指令用于设置进程在处理未被缓存的文件时跳过缓存步骤的百分率。
; 比如设为75表示在遇见未被缓存的文件时有75%的概率不进行缓存,从而减少碰撞几率。
; 鼓励设为 0 来禁用这个特性。
apc.stat = On
;SYS
; 是否启用脚本更新检查。
; 改动这个指令值要非常小心。
; 默认值 On 表示APC在每次请求脚本时都检查脚本是否被更新,
; 如果被更新则自动重新编译和缓存编译后的内容。但这样做对性能有不利影响。
; 如果设为 Off 则表示不进行检查,从而使性能得到大幅提高。
; 不过为了使更新的内容生效,你必须重启Web服务器。
; 这个指令对于include/require的文件同样有效。不过需要注意的是,
; 如果你使用的是相对路径,APC就必须在每一次include/require时都进行检查以定位文件。
; 而使用绝对路径则能跳过检查,所以鼓励你使用绝对路径进行include/require操作。
apc.user_entries_hint = 100
;SYS
; 类似于num_files_hint指令,只是针对每个不同用户而言。
; 如果你不能确定,则设为 0 。
apc.write_lock = On
;SYS
; 是否启用写入锁。
; 在非常繁忙的服务器上,无论是启动服务还是修改文件,
; 都可能由于多个进程企图同时缓存一个文件而导致竞争条件。
; 启用该指令能避免竞争条件的出现。
apc.rfc1867 = Off
;SYS
; 打开该指令后,对于每个恰好在file字段之前含有APC_UPLOAD_PROGRESS字段的上传文件,
; APC都将自动创建一个upload_的用户缓存条目(就是APC_UPLOAD_PROGRESS字段值)。
分享到:
相关推荐
**APC(Alternative PHP Cache)** 是一个广泛使用的PHP加速器,它为PHP提供了一个共享内存存储机制,用于存储编译后的PHP代码。这减少了PHP解释器重复编译源代码的时间,显著提升了PHP应用的运行速度。APC不仅可以...
**PHP 5.3.3 APC扩展模块...总结,PHP 5.3.3的APC扩展模块是提升WAMP环境性能的有效手段,通过正确配置和使用,能显著加快PHP应用的运行速度。然而,随着技术的发展,开发者应当关注并考虑适应更现代的缓存解决方案。
**正文** Alternative PHP Cache(APC)是一款针对PHP编程语言的免费且开源的代码缓存系统,它在提升PHP应用程序性能方面发挥着重要作用。...正确配置和使用APC,对任何PHP应用的性能提升都有积极的影响。
**PHP APC (Alternative PHP Cache) 插件详解** ...在WAMP环境下,正确配置和使用APC能有效优化PHP 5.4.3的运行效率。同时,要根据PHP的线程安全设置选择合适的dll文件,并时刻关注版本更新和性能调优。
在PHP 5.4版本中,Alternative PHP Cache (APC)是一个非常重要的性能优化工具,它是一个免费且开源的缓存和数据存储机制,主要针对PHP的opcode进行缓存,从而加速PHP应用程序的执行速度。 **APC扩展的作用** 1. **...
APC(Alternative PHP Cache)是PHP的一个流行缓存和优化工具,它能够加速PHP脚本的执行速度,通过将编译后的PHP代码存储在共享内存中,避免了每次请求时重复编译的过程。版本号 "3.1.10" 表示这是APC的第3.1.10次...
首先,APC(Alternative PHP Cache)是PHP的一个重要缓存扩展,它的主要功能是加速PHP的执行效率。APC提供了对PHP代码的编译结果进行缓存的能力,避免了每次请求时重复编译的过程。这大大减少了服务器的CPU负载,并...
本文将围绕如何使用APC缓存优化PHP程序,探讨其工作原理、安装配置、以及如何监控和调整其性能,以达到最佳的优化效果。 ## APC的工作原理 在未使用APC的情况下,PHP代码在每次请求时都需要经过解释器解析和编译,...
描述中的 "apc加速" 暗示这个 APC 是 Advanced PHP Cache 的缩写,这是一个 PHP 的扩展,主要用于提高 PHP 应用程序的性能。APC(Advanced PHP Cache)通过缓存 PHP 的编译后的代码,避免了每次请求时重复编译的过程...
如果你是使用源码安装,需要使用`phpize`命令来配置与当前PHP环境的兼容性,然后执行`./configure --enable-apc`。 3. 编译和安装。使用`make`和`make install`命令完成编译和安装过程。 4. 修改PHP配置文件(如`...
当前我用的是APC-3.1.9 stable ,可以自己到 http://pecl.php.net/package/APC 下载最新版。 1、安装 复制代码 代码如下: wget http://pecl.php.net/get/APC-3.1.9.tgz tar xzvf APC-3.1.9.tgz cd APC-3.1.9 /usr/...
- 自定义配置:用户可以根据自己的需求自定义配置文件,调整清理策略。 5. **兼容性**: `CacheTool` 兼容多种PHP版本,从PHP 5.2 到 PHP 8.x,同时适用于多种操作系统,如Linux、macOS和Windows。 **安装与使用...
在PHP的开发和优化过程中,正确配置和使用这类缓存扩展是非常关键的。例如,调整APC的缓存大小、清理策略以及内存分配等参数,都可以对服务器性能产生显著影响。同时,由于APC已经不再更新,如果还在使用PHP 5.x版本...
4. **测试连接**:使用`phpinfo()`函数检查扩展是否正确安装和配置,或者编写简单的测试脚本来验证功能。 在实际项目中,`apc`常用于缓存PHP脚本,而`redis`则更多地用作数据库缓存、会话管理以及处理实时数据流。...
APC(Alternative PHP Cache)是PHP的一个加速器,它缓存了PHP脚本的编译结果,避免了每次请求时重复编译的过程,显著减少了服务器的CPU使用率。此外,APC还提供了用户级别的共享内存,可以用于数据共享和缓存,...
本文将对五种常见的PHP缓存加速器进行分析,包括Memcached、eAccelerator、APC(Alternative PHP Cache)、Xcache以及Redis,以帮助理解它们的特点和适用场景。 首先,Memcached是一个分布式内存对象缓存系统,常...
**PHP APC配置详解** PHP Alternative PHP Cache (APC) 是一个免费且开源的 PHP 缓存和优化工具,用于加速 PHP 应用程序的运行。它通过存储预编译的 PHP 代码在共享内存中来减少对磁盘的读取,从而提高性能。本文将...
APC全称是Alternative PHP Cache,是一个PHP加速器,用于缓存PHP代码,提高PHP应用性能。除了代码缓存之外,APC还提供了内存缓存功能。不过,使用APC缓存写入功能频繁的情况下,可能会导致一些不可预见的错误。因此...
APC不仅可以加速PHP执行速度,还能降低CPU使用率。在Windows环境下安装APC,需要遵循以下步骤: 1. **APC简介** - APC的主要功能是缓存PHP脚本的编译结果,减少对PHP解释器的需求,从而提升服务器响应速度。 - 它...