注本网转载某位大侠的 具体的给忘 了 贴出来共享下
一、eAccelerator
介绍
我们知道,php
是属于解释开型语言,他们编写的动态内容都需要解释器来运行,解释器会把代码进行语法分析,然后生成可直接运行的中间代码,这个
中间代码被称为opcode
(operate code
),
每一段php
代码在运行的时候都有一个转换为opcode
的过程,如果一段代码要运行多次的话,opcode
也会生成多次
eAccelerator
是一个免费开源的PHP
加速的软件,
其原理是通过缓存PHP
代码编译后的opcode
到共享内存中,并在用户访问的时候直接调来提高PHP
脚本的运行效 率,来起到高效的加速作用,对于不能缓存到共享内存中的文件和代码,eAccelerator
还可以把他们缓存到系统磁盘上
通过使用eAccelerator
,可以优化你的PHP
代码执行速度,降低服务器负载。
更多了解看
这里
二、eAccelerator
安装
1
、安装 可以直接看
这里
wget http://bart.eaccelerator.net/source/0.9.6/eaccelerator-0.9.6.tar.bz2
tar jxvf
/root/tools/eaccelerator-0.9.6.tar.bz2
cd
eaccelerator-0.9.6/
export
PHP_PREFIX="/usr/local/php"
$PHP_PREFIX/bin/phpize
./configure
--enable-eaccelerator=shared --with-php-config=$PHP_PREFIX/bin/php-config
make&&make install
本人强列推荐把要用的软件打包成rpm
易管理,使用方便。
关于如何创建eaccelerator
的RPM
包,请
参考这里
三、eAccelerator
配置
一、eAccelerator
提供了两种配置和调用方式,分别为安装为
1
、Zend
extension
模式
用语句zend_extension=
后面跟加eaccelerator.so
的绝对路径,比如
zend_extension =
/usr/local/php/lib/modules/eaccelerator.so
2
、安装为 PHP extension
模式,
则用语句 extension=”eaccelerator.so”
就可以 其它的配置一样
二、php
调用到eaccelerator.so
的方法也可以有两种
方法一,直接在php.ini
文件的任意位置里面添加和下面eaccelerator.ini
一样的语句
方法二:编绎php
时如果加了 –with-config-file-scan-dir=/etc/php.d
(或其它目录)则
直接可以用vi eaccelerator.ini
。然后放入相应目录,其内容如下:
; Enable eAccelerator extension module
zend_extension =
/usr/local/php/lib/modules/eaccelerator.so
; Options for the eAccelerator module
eaccelerator.shm_size = 0
eaccelerator.enable = 1
eaccelerator.optimizer = 1
eaccelerator.check_mtime = 1
eaccelerator.filter = ""
eaccelerator.shm_max = 0
eaccelerator.shm_ttl = 3600
eaccelerator.shm_prune_period = 0
eaccelerator.shm_only = 0
eaccelerator.compress = 1
eaccelerator.compress_level = 9
eaccelerator.keys = "shm_and_disk"
eaccelerator.sessions = "shm_and_disk"
eaccelerator.content = "shm_and_disk"
eaccelerator.debug = 9
eaccelerator.allowed_admin_path=/usr/local/apache2/htdocs/eaccelerator/
eaccelerator.cache_dir = "/tmp/eaccelerator"
eaccelerator.log_file = "/tmp/eaccelerator.log"
更多详细及语句解释可以直接看
这里
三、完成安装配置后,我们最后要创建缓存目录
mkdir /tmp/eaccelerator
chmod 777 /tmp/eaccelerator
四、确认eaccelerator
已配置成功
如果你的机器上有php
命令,则直接用php -v
就会看到
PHP
5.2.13 (cli) (built: Apr 21 2010 22:38:51)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2010
Zend Technologies
with eAccelerator v0.9.6, Copyright (c)
2004-2010 eAccelerator, by eAccelerator
如果没有php
命令,则可以在写一个info.php
的文件,内容为
,在浏览器里打开你的info.php
文件,也会看到eAccelerator
相应的信息
以上两种办法都能帮你确认eAccelerator
已正确配置
四、安装eAccelerator control panel
(control.php
)
把解开的eAccelerator
的源码包里的control.php
文件复制到你的WEB
服务器中的一个目录下,使其它以通过http
访问,如本例中
http://10.20.0.199/eaccelerator/control.php
还记得在前面配置eaccelerator
时有一个选项,这个选项的作用就是充许你通过control.php
看到更多的相关信息和能控制eAccelerator
。 eaccelerator.allowed_admin_path
要打开control.php
文件,你需要输入默认的用户名”admin
“
和密码”eAccelerator
”
这个用户名和密码可以在control.php
文件里修改。
二、这个控制面板有两大主要功能
一:控制eAccelerator
的功能如禁用或者启用eaccelerator
的缓存和优化作用,删除缓存的内容等
二:是查看已经缓存过的文件
五、eAccelerator
配置后效果测试
在开始之前我要先明一个服务器的并发处理问题,一般我们量化服务器的处理能力时会用到一个词吞吐率(throughput
),单位是“reqs/s”
这个词还用于描述如网络通讯数据量等,但这里只用于描述服务器的并发。
还需要了解一下ab
的使用
如果之前不了解,
可以看这里
····
这里重点关注ab
报告里requests per second
:
如下:
....
截去 .....
Document Path:
/index.php
Document Length:
47459 bytes
Concurrency
Level:
100
Time taken for
tests:
43.394 seconds
Complete requests:
10000
Failed requests:
0
Write errors:
0
Total
transferred:
476070979 bytes
HTML
transferred:
474650695 bytes
Requests per
second:
230.44 [#/sec] (mean)
Time per
request:
433.945 [ms] (mean)
Time per
request:
4.339 [ms] (mean, across all concurrent
requests)
Transfer rate:
10713.65 [Kbytes/sec] received
....
截去 .....
测试及取值方法,这里我们直接用index.php
脚本.
里面的内容为 ab
并发100
,请求10000
次来取得服务器的吞吐。然后对不安装和安装eaccelerator
分别取下的服务器的吞吐的值进行对比。来确定 eaccelerator
加速效用
注意:
为了排除网络响应等其它的因素我建义ab
命令的测试就在本机运行
为了数据的有效性,建议多次运行ab
命令,然后取得一个比较平均的值
一、不安装eaccelerator
的测试数据
ab -c 100 -n 10000
http://10.20.0.199/index.php
Document
Path: /index.php
Document Length:
39630 bytes
Concurrency
Level: 100
Time taken for
tests: 8.031 seconds
Complete
requests: 10000
Failed
requests: 0
Write
errors: 0
Total
transferred: 397744576 bytes
HTML
transferred: 396324434 bytes
Requests per
second: 1245.19 [#/sec] (mean)
Time per
request: 80.309 [ms] (mean)
Time per
request: 0.803 [ms] (mean, across all
concurrent requests)
Transfer
rate: 48366.09
[Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect:
0 1 2.0
0 20
Processing:
13 79 8.2
80 104
Waiting:
7 76 11.1 79
100
Total:
20 80 7.5
80 104
Percentage of the
requests served within a certain time (ms)
二、安装eaccelerator
的测试数据
ab -c 100 -n 10000
http://10.20.0.199/index.php
Document
Path: /index.php
Document
Length: 42147 bytes
Concurrency
Level: 100
Time taken for
tests: 6.378 seconds
Complete
requests: 10000
Failed
requests: 0
Write
errors: 0
Total
transferred: 423038785 bytes
HTML
transferred: 421618217 bytes
Requests per
second: 1567.89 [#/sec] (mean)
Time per
request: 63.780 [ms] (mean)
Time per
request: 0.638 [ms] (mean, across all
concurrent requests)
Transfer
rate: 64773.36
[Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect:
0 0 0.6
0 8
分享到:
相关推荐
php缓存加速器eAccelerator配置详解
php缓存加速器eAccelerator配置详解
php加速器eaccelerator概述.docx
格式:eAccelerator_v1_0_svn427_for_v5_3_5-VC6 eAccelerator支持php5.3.5加速器及配置,内有PHP.INI的配置文档
eaccelerator加速器,eaccelerator版本有0952 0953 0960 0961 喜欢用哪个就用哪个,里面有包含thread safe(线程安全版)eaccelerator_ts.dll 和no thread safe(非线程安全版),附带配置示例和eaccelerator管理文件...
eAccelerator专门为PHP开发,是目前较为主流的可使用在PHP之中的缓存加速工具. eAccelerator的主要功能: 1. 缓存PHP文件的执行代码:在被缓存的代码再次被调用时,将直接从内存读取,从而在很大程度了PHP运行的...
eAccelerator for windows php v5.3.XX VC9 PHP加速模块下载, 这个东西是目前PHP加速最好用的缓存模块了, 这个是windows平台下使用的已经编译好的eAccelerator.dll 文件, TS 和NTS 2个版本.
(笔者使用fast-cgi模式运行php,请根据自己的实际情况进行相关的改动和配置,本文附件提供php5.3.6VC9nts以及php5.2.17vc6nts(使用VC6.0编译)编译后的 eAccelerator v0.9.6.1下载 。) Php5.3.6(VC9 x86 Non Thread...
eAccelerator0953_5.2.10.dll
前一段时间完成了服务器从FreeBSD4.10到6.1的升级,同时把PHP也升级到了最新的PHP5.1.4,Apache也...文件配置5、验证安装三、使用eAccelerator开发PHP代码1、API文档和接口说明2、开发范例四、附录和参考资料 一、eA
eaccelerator安装配置PHP加速 eAccelerator简介 eAccelerator是一个的免费、开源的PHP模块,它能够为提供PHP加速、优化、加码、和动态内容缓存功能。它通过存储PHP脚本编译后的状态而加快执行PHP脚本的速度,而不...
eAccelerator for php 5.2.6 有需要的朋友可以放心下载
使用 eAccelerator加速PHP代码的方法
打开D:\APMServ5.2.6\Zend\eAccelerator文件夹,马上可以看到eAccelerator.dll这个文件,再在文件夹D:\APMServ5.2.6\PHP下面搜索一下包含eAccelerator的关键字 可以发现只有php.ini里面包含了eAccelerator.dll的引用 ...
eAccelerator是一个自由开放源码php加速器,优化和动态内容缓存,提高了性能php脚本的缓存性能,使得PHP脚本在编译的状态下,对服务器的开销几乎完全消除。 它还有对脚本起优化作用,以加快其执行效率。使您的PHP...
eAccelerator是一个自由开放源码php加速器,优化和动态内容缓存,提高了性能php脚本的缓存性能,使得PHP脚本在编译的状态下,对服务器的开销几乎完全消除。 它还有对脚本起优化作用,以加快其执行效率。使您的PHP...
在linux上建立PHP的加速器eAccelerator.pdf