LAMP服务器性能优化技巧之加速PHP
apache服务器优化、php优化、mysql优化
1.使用eaccelerator
我们上面的介绍apache服务器的优化,如果您曾经浏览过 php 的网页时,或许会发现:怎么 php 的速度慢慢的,这是怎么一回事啊?php 不是号称速度上面的反应是很快速的吗?怎么会慢慢的呢?这是由于 php 的程序代码去调用了太多的函式库,而这些函式库每次调用都需要由硬盘读出来,有没有办法提升 php 的执行速度啊。如果我们可以将这些在硬盘里面的函式库先读到高速缓存中( cache ),由于内存的速度可比硬盘快多了。如此一来的话,当然可以提升不少速度。
2、软件下载安装:
wget http://internap.dl.sourceforge.net/sourceforge/eaccelerator/eaccelerator-0.9.3.tar.bz2
tar jxf eaccelerator-0.9.3.tar.bz2
/usr/local/bin/phpize ./configure --enable-eaccelerator=shared --with-php-config=/usr/local/bin/php-config make;make install
修改/etc/php.ini文件,加入以下内容:
extension="/path/to/eaccelerator.so" 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.shm_prune_period="0" eaccelerator.shm_only="0" eaccelerator.compress="1" eaccelerator.compress_level="9"
然后建立快存取数据目录:
mkdir /tmp/eaccelerator chmod 0777 /tmp/eaccelerator
从新启动apache服务器:
/etc/rc.d/init.d/httpd restart
通过lynx浏览器打开web页面查看通过phpinfo()已经可以看到图7,就表示安装成功。
图7 eaccelerator启用
从图中可以看到:eaccelerator启用了。下面 使用ab命令:apache http 服务器性能测试工具,是一个测试你apache http服务器的工具,你可以通过这个工具指定一个单位时间内向apache发出的请求数量来看看你的apache和机器配合的性能如何。命令如下:
/home/apache/bin/ab -c 20 -n100 –w http://localhost/phpinfo >1.html
-c: 同时向服务器端发送的请求数目,默认状态下是一次只执行一个http请求。
-n: 执行一次测试会话的时候所发出的请求数目。
-w:打印输出结果到html表中,默认的表是两列n行白底黑框 。
apachebench)的测试数据的 requests per second (以下简称 rps)一项是指每秒服务器返回的页面数,经过比较使用了 eaccelerator 后网页速度明显加快了。图8 lynx浏览器的 html格式测试结果。
图8 html格式测试结果
3.使用zend optimizer
zend optimizer用优化代码的方法来提高php 4.0应用程序的执行速度。实现的原理是对那些在被最终执行之前由运行编译器(run-time compiler)产生的代码进行优化。一般情况下,执行使用zend optimizer的php程序比不使用的要快40%到100%。这意味着网站的访问者可以更快的浏览网页,从而完成更多的事务,创造更好的客户满意度。更快的反应同时也意味着可以节省硬件投资,并增强网站所提供的服务。所以,使用zend optimizer,就等于提高了电子商务的盈利能力。zend optimizer能给php用户带来很多益处,特别是那些运营网站的人。快速运行php程序可以显著降低服务器的cpu负载,并可以减少一半的反应时间,也就是从访问者点击链接到服务器开始读取页面之间的时间。
zend optimizer安装是傻瓜化的,安装向导会自动根据你的选择来修改php.ini帮助你启动这个引擎。
软件下载安装:
wget http://downloads.zend.com/optimizer/3.0.0/zendoptimizer-3.0.0-linux-glibc21-i386.tar.gz
gunzip zendoptimizer-3.0.0-linux-glibc21-i386.tar.gz
tar vxf zendoptimizer-3.0.0-linux-glibc21-i386.tar
cd zendoptimizer-3.0.0-linux-glibc21-i386
./install
图 9 zend optimizer安装向导
从新启动apache服务器:
/etc/rc.d/init.d/httpd restart
打开web页面查看通过phpinfo()已经可以看到图,就表示zend optimizer安装成功。
图 10 zend optimizer安装成功
然后可以使用ab命令进行再次测试。也可以使用siege(http://www.joedog.org/siege/ )进行测试,它是一个压力测试和评测工具,设计用于web开发这评估应用在压力下的承受能力:可以根据配置对一个web站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间,并在一定数量的并发访问下重复进行。
上一篇: 100个喷墨打印机故障问答
下一篇: 激光打印机机械系统故障