本文引用《高性能 PHP 开发》来做下记录
无论从命令行还是从 Web 服务器上执行 PHP 脚本时,PHP 必须执行所需的5个步骤。
Zend 引擎必须从文件系统中读取该文件、扫描其词典和表达式、解析文件、创建要执行的计算机代码(称为Opcode),最后执行 Opcode。
PHP 的生命周期非常的短暂,但是,每次对脚本发起请求时,它必须执行这5个步骤。每次在针对特定的 PHP 脚本的请求到达时,即使改PHP脚本的内容没有任何变化时,Zend 引擎也必须重新创建该文件的 Opcode。对于脚本的初次请求是必要的,但是后续请求则无需如此操作。如果实现了 Opcode 缓存,就可以省略三个步骤以缩短 PHP 的生命周期
1)词典解析;
2)解析;
3)创建 Opcode
APC就可以实现对 PHP 脚本的 Opcode 缓存,不过在开发阶段不能开启 APC,不然修改了脚本,Zend 引擎还是执行缓存里的 Opcode。
安装 APC,以 CentOS6.5 64位为例
wget http://pecl.php.net/get/APC-3.1.9.tgz #下载
tar zxvf APC-3.1.9.tgz #解压
cd APC-3.1.9 #切换目录
phpize #调出 configure 配置文件
./configure --with-php-config=/usr/local/php/bin/php-config #配置
make && make install #编译安装
成功后生成 apc.so
打开 php.ini 添加
extension=apc.so
apc.enabled=1
apc.shm_segments=1
apc.shm_size=128
apc.stat=0
apc.ttl=0
保存,重启 Apache/Nginx。
附加 APC 常用的设置参数,大家凑活着看吧~