使用APC对PHP进行性能优化

PHP作为脚本语言,每次运行都需要解释、编译运行。

APC(Alternative PHP Cache)是一个PHP的自由和开放的opcode缓存。它的目标是提供一个自由,开放,强大的缓存和优化PHP的中间代码的框架。

APC能够有效避免每次重复解释。

window平台下的dll下载地址:http://downloads.php.net/pierre/

linux平台下的源码下载地址:http://pecl.php.net/package/apc


window下的配置步骤:

1、将php-apc.dll文件拷贝到php目录下的ext文件夹。

2、编辑php.ini,末尾追加:

[apc]
extension="php_apc.dll"
apc.enabled=1
apc.shm_segments=1
apc.shm_size=48
apc.ttl=7200
apc.user_ttl=7200
apc.num_files_hint=1024
apc.mmap_file_mask=d:/tmp/apc.XXXXXX
apc.enable_cli=1


linux下的安装步骤:

1.下载源码包

wget http://pecl.php.net/get/APC-3.1.5.tgz

注:此处我选择的是3.1.5版本

2.解压、编译、安装

#tar -zxvf APC-3.1.5.tgz

#cd APC-3.1.5

#./configure --enable-apc --enable-mmap

#make

注:如果输入make,提示 'apc_regex' has no member named 'preg' 错误信息

我在测试安装过程中,也出现这个问题。谷歌后发现是因为未安装PCRE、PCRE-devel。

解决方法:yum -y install pcre pcre-devel

#make install

2.编辑php.ini

[apc]
extension=apc.so
apc.enabled=1
apc.shm_segments=1
apc.shm_size=48
apc.ttl=7200
apc.user_ttl=7200
apc.num_files_hint=1024
apc.mmap_file_mask=/var/data/tmp/apc.XXXXXX
apc.enable_cli=1



参数简单说明

apc.enabled 可以设成 0 来禁用 APC。

apc.shm_segments 对编译器缓存要分配的共享内存块的数目。

apc.optimization 优化级别。设为 0 则禁用优化器,更高的值则使用更主动的优化。

apc.ttl 缓存条目在缓冲区所允许的空闲时间的秒数。将此设为零意味着缓冲区有可能被阻赛了的缓存充满而导致新条目不被缓存。 

apc.num_files_hint Web 服务器上的被包含或被请求的不同源文件的数目的大概估计。如果不确定则设为 0 或去掉此项;此设定主要用在有数千个源文件的站点。


3、重启apache


另外,官方提供了一个用来查看APC状态的WEB页面。文件可以在APC源码包中得到,文件名apc.php



  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值