三款免费的PHP加速器:APC、eAccelerator、XCache比较

2019-11-17 22:34:44 0 一键抢沙发得好礼 三款免费的PHP加速器:APC、eAccelerator、XCache比较

QQ群:39813880(一月不说话会被T走)

三款免费的PHP加速器:APC、eAccelerator、XCache比较

商家介绍


一直想找一些关于PHP加速的文章,偶然看到杀客的这篇文章,感觉不错,分享给大家,再此感谢杀客。

一、PHP加速器介绍

        PHP加速器是一个为了提高PHP执行效率,从而缓存起PHP的操作码,这样PHP后面执行就不用解析转换了,可以直接调用PHP操作码,这样速度上就提高了不少。

        Apache中使用mod_php的请求、响应执行流程:

  1、Apache接收请求。
2、Apache传递请求给mod_php。
3、mod_php定位磁盘文件,并加载到内存中。
4、mod_php编译源代码成为opcode树。
5、mod_php执行opcode树。

       PHP加速器相应的就是第四步,它的目的就是防止PHP每次请求都重复编译PHP代码,因为在高访问量的网站上,大量的编译往往没有执行速度快呢?所以这里面有个瓶颈就是PHP的重复编译既影响了速度又加载了服务器负载,为了解决此问题,PHP加速器就这样诞生了。

二、PHP加速器安装与配置

        1、安装配置APC

             APC全称是Alternative PHP Cache,官方翻译叫”可选PHP缓存”,它是PHP PECL中的一个扩展,好像是facebook在使用它,下面开始安装(ubuntu环境): 
$wget http://pecl.php.net/get/APC-3.0.19.tgz
$tar xvzf APC-3.0.19.tgz
$cd APC-3.0.19/APC-3.0.19
$/usr/local/php/bin/phpize
$./configure –enable-apc –enable-apc-mmap –with-php-config=/usr/local/php/bin/php-config
$make
$sudo make install

下面我们再配置APC,因为我的PECL扩展路径改变了,所以我得移动下编译好的文件:
$sudo mv /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/apc.so /usr/local/php/lib/php/extensions/PECL

然后我们再编辑php.ini文件进行配置,请把下面的代码加入到php.ini中即可:
extension_dir = "/usr/local/php/lib/php/extensions/PECL"
extension = apc.so
; APC
apc.enabled = 1
apc.shm_segments = 1
apc.shm_size = 64
apc.optimization = 1
apc.num_files_hint = 0
apc.ttl = 0
apc.gc_ttl = 3600
apc.cache_by_default = on

     这样重启apache就会在phpinfo()信息中显示。

       2、安装配置eAccelerator

          eAccelerator的前身其实是truck-mmcache,因为开发truk-mmcache的人被Zend给招安了,所以开发eAccelerator的人继承了truk-mmcache的一些特性,设计出eAccelerator加速器。安装如下:
$wget http://jaist.dl.sourceforge.net/sourceforge/eaccelerator/eaccelerator-0.9.5.tar.bz2
$tar -jxf eaccelerator-0.9.5.tar.bz2
$cd eaccelerator-0.9.5
$/usr/local/php/bin/phpize
$./configure –enable-eaccelerator=shared –with-php-config=/usr/local/php/bin/php-config
$make
$sudo make install
$sudo mv /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/eaccelerator.so /usr/local/php/lib/php/extensions/PECL

将下面代码加入php.ini文件中
extension = eaccelerator.so
; eAccelerator
eaccelerator.shm_size = "16"
eaccelerator.cache_dir = "/tmp/eaccelerator"
eaccelerator.enable = "1"
eaccelerator.optimizer = "1"
eaccelerator.check_mtime = "1"
eaccelerator.debug = "0"
eaccelerator.filter = ""
eaccelerator.shm_max = "0"
eaccelerator.shm_ttl = "0"
eaccelerator.prune_period = "0"
eaccelerator.shm_only = "0"
eaccelerator.compress = "1"
eaccelerator.compress_level = "9"

创建缓存目录,重启apache

$sudo mkdir /tmp/eaccelerator
$sudo chmod 777 /tmp/eaccelerator
$sudo /usr/local/apache/apachectl restart

在phpinfo()检查是否安装成功.

3、安装配置XCache

XCache作为国人自己开发的东西,做小菜鸟的我也感到骄傲,而且XCache无论在速度还是性能上都做的不错。下面就赶紧让我们品尝它吧!

$wget http://xcache.lighttpd.net/pub/Releases/1.2.2/xcache-1.2.2.tar.gz
$tar xvzf xcache-1.2.2.tar.gz
$cd xcache-1.2.2
$/usr/local/php/bin/phpize
$./configure –enable-xcache –enable-xcache-coverager –with-php-config=/usr/local/php/php-config
$make
$sudo make install
$sudo mv /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/xcache.so /usr/local/php/lib/php/extensions/PECL

在php.ini添加配置信息:

extension = xcache.so
; xcache
xcache.admin.user = "admin"
xcache.admin.pass = "(执行) echo ’(你的密码)’|md5sum(得出的密文)"
;
xcache.size = 24M
xcache.shm_scheme = "mmap"
xcache.count = 2
xcache.slots = 8k
xcache.ttl = 0
xcache.gc_interval = 0

xcache.var_size = 8M
xcache.var_count = 1
xcache.var_slots = 8k
xcache.var_ttl = 0
xcache.var_maxttl = 0
xcache.var_gc_interval = 300
xcache.test = Off
xcache.readonly_protection = On
xcache.mmap_path = "/tmp/xcache"
xcache.coredump_directory = ""
xcache.cacher = On
xcache.stat = On
xcache.optimizer = Off
;
xcache.coverager = On
xcache.coveragedump_directory = ""

创建缓存目录,重启apache

$sudo mkdir /tmp/xcache
$sudo chmod 777 /tmp/xcache
$sudo /usr/local/apache/bin/apachectl restart

去查看phpinfo()信息吧!

三、PHP加速器测试

1、测试环境

硬件: AMD Athlon 64 X2 Dual Core Processor 4400+ @ 2.2GHz CPU, 2GB 内存. 160GB SATA 硬盘

软件: Linux Ubuntu server Gutsy 7.10, Apache 2.2.4, MySQL 5.0.45 和 PHP 5.2.3

测试指令: ab -c5 -n3000 http://example.com/ (我们使用的是Apache Benchmark (ab) 工具,并发连接为5,3000次请求)

2、测试结果

无任何加速器:

Document Path: /
Document Length: 21757 bytes
Concurrency Level: 5
Time taken for tests: 288.255212 seconds
Complete requests: 3000
Failed requests: 0
Write errors: 0
Total transferred: 66777000 bytes
HTML transferred: 65271000 bytes
Requests per second: 10.41 [#/sec] (mean)
Time per request: 480.425 [ms] (mean)
Time per request: 96.085 [ms] (mean, across all concurrent requests)
Transfer rate: 226.23 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.5 0 19
Processing: 181 479 186.0 444 1822
Waiting: 166 461 184.7 427 1708
Total: 181 479 186.0 444 1822
Percentage of the requests served within a certain time (ms)
50% 444
66% 525
75% 577
80% 619
90% 732
95% 819
98% 946
99% 1012
100% 1822 (longest request)

APC加速器:

Document Path: /
Document Length: 21757 bytes
Concurrency Level: 5
Time taken for tests: 98.530068 seconds
Complete requests: 3000
Failed requests: 0
Write errors: 0
Total transferred: 66777000 bytes
HTML transferred: 65271000 bytes
Requests per second: 30.45 [#/sec] (mean)
Time per request: 164.217 [ms] (mean)
Time per request: 32.843 [ms] (mean, across all concurrent requests)
Transfer rate: 661.84 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.0 0 2
Processing: 58 163 71.2 155 2452
Waiting: 53 158 69.6 150 2329
Total: 58 163 71.2 155 2452
Percentage of the requests served within a certain time (ms)
50% 155
66% 178
75% 193
80% 204
90% 235
95% 258
98% 285
99% 302
100% 2452 (longest request)

eAccelerator加速器:

Document Path: /
Document Length: 21757 bytes
Concurrency Level: 5
Time taken for tests: 95.983986 seconds
Complete requests: 3000
Failed requests: 0
Write errors: 0
Total transferred: 66777000 bytes
HTML transferred: 65271000 bytes
Requests per second: 31.26 [#/sec] (mean)
Time per request: 159.973 [ms] (mean)
Time per request: 31.995 [ms] (mean, across all concurrent requests)
Transfer rate: 679.39 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.1 0 3
Processing: 57 159 91.3 148 3830
Waiting: 50 152 89.8 142 3704
Total: 57 159 91.3 148 3830
Percentage of the requests served within a certain time (ms)
50% 148
66% 174
75% 193
80% 205
90% 239
95% 263
98% 289
99% 309
100% 3830 (longest request)

XCache加速器:

Document Path: /
Document Length: 21757 bytes
Concurrency Level: 5
Time taken for tests: 99.76300 seconds
Complete requests: 3000
Failed requests: 0
Write errors: 0
Total transferred: 66777000 bytes
HTML transferred: 65271000 bytes
Requests per second: 30.28 [#/sec] (mean)
Time per request: 165.127 [ms] (mean)
Time per request: 33.025 [ms] (mean, across all concurrent requests)
Transfer rate: 658.19 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.0 0 2
Processing: 59 164 83.4 155 3367
Waiting: 52 156 66.4 148 1802
Total: 59 164 83.4 155 3367
Percentage of the requests served within a certain time (ms)
50% 155
66% 178
75% 196
80% 206
90% 237
95% 263
98% 287
99% 305
100% 3367 (longest request)

3、结果摘要

  请求时间(秒) 单次请求时间(毫秒) 最大内存占用(MB) 最小内存占用(MB)
None 10.41 96.08 24 24
APC 30.45 32.84 21 21
eAccelerator 31.26 31.99 23 18
XCache 30.28 33.02 29 19

四、PHP加速器比较结果总结

     1、通过测试得出eAccelerator在请求时间和内存占用综合方面是最好的。

     2、通过测试得出使用加速器比无加速器在请求时间快了3倍左右。

     3、通过各个官方观察,XCache是更新最快的,这也说明最有发展的。

        以上是总结结果,你也许会问我到底用那个加速器好呢?我只能告诉你,首先,用一定比不用好,其次每个加速器还有一些可以调优的参数,所以要根据你的系统环境而定,然后,我个人觉得你可以详细研究下eAccelerator和XCache,这两款潜力还是很大的,最后我从比较专业的测试网站搞了一张结果图:

cache

香港沙田30M大带宽

香港沙田可用區基于业界领先的KVM虚拟化技术,全系产品采用性能强劲的高主频E5处理器、SSD磁盘阵列 (RAID10+BBU)、三网直连线路 。 (禁止有攻击网站、垃圾邮件、黄赌毒违法、政治内容、严格禁止 公共/商业 代理用途)可DIY配置的香港雲端伺服器。Windows贈送40GB系統盤、Linux贈送20GB系統盤,如果您需要額外數據盤請點擊「立即訂購」選配您的DIY云服務器。测试IP:103.80.16.1
月付不限量85折 优惠码: 0N24XJLO5I 年付不限量七折 优惠码: WLGSC9TEV2 (以上优惠截止日期:2019年11月13日)
香港沙田 1 CPU 核心 1 GB 内存 200 GB 流量 30 Mbps 峰值 199元/年立即购买
香港沙田 1 CPU 核心 1 GB 内存 500 GB 流量 30 Mbps 峰值 50元/月立即购买
香港沙田 2 CPU 核心 4 GB 内存 800 GB 流量 30 Mbps 峰值 100元/月立即购买
香港沙田 2 CPU 核心 2 GB 内存 500 GB 流量 30 Mbps 峰值 100元/月立即购买

香港CMI高防

香港CMI高防區基于业界领先的KVM虚拟化技术,全系产品采用性能强劲的高主频E5处理器、SSD磁盘阵列 (RAID10+BBU)、默认提供5Gbps的基础防护 。 (禁黄赌毒违法、政治内容、严格禁止 公共/商业 代理用途)可DIY配置的香港雲端伺服器。贈送20GB系統盤,如果您需要額外數據盤請點擊「立即訂購」選配您的DIY云服務器。测试 IP: 103.135.33.68 下载测试: http://103.135.33.68/test.zip
月付不限量85折 优惠码: 0N24XJLO5I 年付不限量七折 优惠码: WLGSC9TEV2 (以上优惠截止日期:2019年11月13日)
香港CMI高防 1 CPU Cores 1 GB RAM 5 Mbps 无限制 月流量 61元/月立即购买
香港CMI高防 1 CPU Cores 1 GB RAM 100 Mbps 700 GB Bandwidth 71元/月立即购买
香港CMI高防 2 CPU Cores 4 GB RAM 100 Mbps 1024 GB Bandwidth 156元/月立即购买

徐州多线高防可用区

徐州多线高防 徐州淮海大数据机房,五星级数据中心,立足于苏北,依托丰富的网络资源和安全防护多元化业务发展,国内少见大带宽高防VPS。默认电信提供100Gbps的金盾硬防。本产品标示的带宽均为单客户使用最大的峰值带宽(非独享带宽),请妥善使用勿长期占满。(禁止垃圾邮件 黄赌毒违法 政治内容 V批N 55等)可根据需求订购额外的磁盘空间(默认提供20GB的系统盘)和更大的流量配额,开设网站需提供已备案域名人工过白名单系统。电信测试IP:58.218.201.1 ,联通测试IP:153.36.108.22,移动测试IP:120.195.163.1
月付不限量85折 优惠码: 0N24XJLO5I 年付不限量七折 优惠码: WLGSC9TEV2 (以上优惠截止日期:2019年11月13日)
徐州电信高防 2 CPU Cores 2 GB RAM 100 Mbps 500 GB Bandwidth 100 Gbps Anti-DDoS 121元/月立即购买
徐州联通高防 2 CPU Cores 2 GB RAM 100 Mbps 500 GB Bandwidth 100 Gbps Anti-DDoS 121元/月立即购买

日本东京

日本东京可用区基于业界领先的KVM虚拟化技术,采用性能强劲的高主频志强处理器、SSD磁盘。
月付不限量85折 优惠码: 0N24XJLO5I 年付不限量七折 优惠码: WLGSC9TEV2 (以上优惠截止日期:2019年11月13日)
日本东京 1 CPU Cores 512 MB RAM 15 GB SSD 500 GB Bandwidth 100 Mbps Port speed 50元/月立即购买
日本东京VPS 1 CPU Cores 1 GB RAM 15 GB SSD 1 TB Bandwidth 100 Mbps Port speed 50元/月立即购买
日本东京VPS 1 CPU Cores 1 GB RAM 15 GB SSD 1 TB Bandwidth 100 Mbps Port speed 100元/月立即购买
日本东京VPS 2 CPU Cores 2 GB RAM 15 GB SSD 1.5 TB Bandwidth 100 Mbps Port speed 200元/月立即购买
日本东京VPS 4 CPU Cores 4 GB RAM 35 GB SSD 2 TB (Out) Bandwidth 200 Mbps Port speed 600元/月立即购买

uovz 官网链接

点这里打开uovz官网


美国vps 香港vps 日本vps 新加坡vps 韩国vps

三款免费的PHP加速器:APC、eAccelerator、XCache比较
香港沙田30M大带宽

上一篇 香港美国高防CN2大带宽VPS 双十一活动巨促 1核1.5G 17元/月 易云在线
下一篇 双十一爆款推荐,年付一元VPS服务器,超低特惠活动

QQ:39813880