网站加速 PHP 缓冲的免费实现方法


Posted in PHP onOctober 09, 2006

文/徐永久

我们知道 Zend 有免费的优化引擎针对 PHP 而作,但是 FreeLAMP 这次采用的是一个叫做 PHP Accelerator 的缓冲产品。

我们在 “LAMP 加速” 这篇文章中阐述过加速的几种办法,其中提到了 PHP Accelerator,它的安装方法十分简单,但是需要去他的网站获取一个激活键。

  

一、下载:

www.php-accelerator.co.uk/download.php

二、获取激活键并安装:

www.php-accelerator.co.uk/activate.php

注册自己的 SERVER_NAME 后,你会得到下面的提示:

Your key for www.freelamp.com is 8edfd13946c96309244fcca309415902

Now you must set the key for www.freelamp.com in your site configuration.

For single domains not using virtual hosts

The key can be set in the php.ini file as follows:

# PHPA key for www.freelamp.com

#

phpa.registration_key = 8edfd13946c96309244fcca309415902

For domains setup as a virtual host

Add the key to the domain specific section for your web server.

# www.freelamp.com VHost entry

#

< VirtualHost 10.20.30.40>

ServerName www.freelamp.com

# ... (other vhost specific config)

# php settings

php_value phpa.registration_key 8edfd13946c96309244fcca309415902

# also enable phpa if set to off in the php.ini (the default is on)

php_value phpa 1

< /VirtualHost>

具体的 phpa 值的设置,可以参考软件随带的 CONFIGURATION 文件的配置。

由于大多数网站是虚拟主机配置,所以,建议采用 php_value phpa. 的方式设置。

例如:

php_value phpa.tweaks off

php_value phpa.cache_dir /tmp

php_value phpa.file_perms 400

php_value phpa.ignore_files "/index.php, /a/test.php"

# php_value phpa.ignore_dirs "/data/WWW/site1/,/cache/"

php_value phpa.shm_size 8

php_value phpa.shm_key 0xc0deb00

php_value phpa.shm_perms 664

三、设置 php.ini

假设我们把下载后的文件解开到 /usr/local/php ,那么在 php.ini 中加入:

zend_extension=/usr/local/php/php_accelerator_1.2p2.so

并注释掉原来的 Zend 优化引擎:

# zend_extension=/usr/local/Zend/lib/ZendOptimizer.so

重新启动 Apache ,用浏览器浏览一个任意 PHP 页面可以看到 /tmp 下面生成了一些 phpa 开头的文件。另外一个检查缓冲是否起作用的办法是看 phpinfo() 的输出,原来的 Zend 优化引擎的说明部分,已经被显示成:

This program makes use of the Zend Scripting Language Engine:

Zend Engine v1.1.1, Copyright (c) 1998-2001 Zend Technologies

with the PHP Accelerator v1.2p2, Copyright (c) 2001-2002, by Nick Lindridge

需要说明的是,安装 INSTALL 安装说明上的办法,其中的 .so 文件和真实的 .so 文件有差异,所以,你在安装的时候需要注意到这个区别。

四、调整缓冲大小

PHP Accelerator 提供了缓冲管理命令:

phpa_cache_admin -mv 观察内存的缓冲情况

phpa_cache_admin -fv 观察文件的缓冲情况

phpa_cache_admin -k 设置缓冲大小

五、总结

该软件提供的 INSTALL 文件阐述了关于性能上的一些说法,笔者不在这里赘述。

需要说明的是,FreeLAMP.com 的文章目前不是 PHP 架构的,但是论坛系统是 PHP 架构的,所以性能上的提升只会是论坛系统的提升。(FreeLAMP:徐永久 提供本文)

PHP 相关文章推荐
PHP 危险函数全解析
Sep 09 PHP
PHP+Ajax异步通讯实现用户名邮箱验证是否已注册( 2种方法实现)
Dec 28 PHP
PHP防CC攻击实现代码
Dec 29 PHP
php.ini修改php上传文件大小限制的方法详解
Jun 17 PHP
PHP中VC6、VC9、TS、NTS版本的区别与用法详解
Oct 26 PHP
PhpDocumentor 2安装以及生成API文档的方法
May 21 PHP
php中$_GET与$_POST过滤sql注入的方法
Nov 03 PHP
php基于Snoopy解析网页html的方法
Jul 09 PHP
php+jQuery+Ajax实现点赞效果的方法(附源码下载)
Jul 21 PHP
PHP实现图片不变型裁剪及图片按比例裁剪的方法
Jan 14 PHP
PHP 年月日的三级联动实例代码
May 24 PHP
Yii2.0框架behaviors方法使用实例分析
Sep 30 PHP
Windows下PHP的任意文件执行漏洞
Oct 09 #PHP
通过对服务器端特性的配置加强php的安全
Oct 09 #PHP
用Zend Encode编写开发PHP程序
Oct 09 #PHP
在php中使用sockets:从新闻组中获取文章
Oct 09 #PHP
15个小时----从修改程序到自己些程序
Oct 09 #PHP
用PHP编程开发“虚拟域名”系统
Oct 09 #PHP
在Windows中安装Apache2和PHP4的权威指南
Oct 09 #PHP
You might like
php的curl实现get和post的代码
2008/08/23 PHP
用PHP实现浏览器点击下载TXT文档的方法详解
2013/06/02 PHP
PHP经典算法集锦【经典收藏】
2016/09/14 PHP
php查看一个变量的占用内存的实例代码
2020/03/29 PHP
使用JQuery和CSS模拟超链接的用户单击事件的实现代码
2012/05/23 Javascript
用js代码改变单选框选中状态的简单实例
2013/12/18 Javascript
Javascript 运动中Offset的bug解决方案
2014/12/24 Javascript
基于Jquery和CSS3制作数字时钟附源码下载(CSS3篇)
2015/11/24 Javascript
【经典源码收藏】基于jQuery的项目常见函数封装集合
2016/06/07 Javascript
jQuery文件上传控件 Uploadify 详解
2016/06/20 Javascript
jquery 属性选择器(匹配具有指定属性的元素)
2016/09/06 Javascript
Vue实现动态显示textarea剩余字数
2017/05/22 Javascript
Express+Nodejs 下的登录拦截实现代码
2017/07/01 NodeJs
浅谈Angular2 ng-content 指令在组件中嵌入内容
2017/08/18 Javascript
Node.js Express安装与使用教程
2018/05/11 Javascript
记一次webpack3升级webpack4的踩坑经历
2018/06/12 Javascript
解决vue select当前value没有更新到vue对象属性的问题
2018/08/30 Javascript
详解node字体压缩插件font-spider的用法
2018/09/28 Javascript
详解一个基于套接字实现长连接的express
2019/03/28 Javascript
移动端手指操控左右滑动的菜单
2019/09/08 Javascript
解决vue字符串换行问题(绝对管用)
2020/08/06 Javascript
使用Python下载Bing图片(代码)
2013/11/07 Python
Python3实现将文件树中所有文件和子目录归档到tar压缩文件的方法
2015/05/22 Python
举例讲解Python设计模式编程中对抽象工厂模式的运用
2016/03/02 Python
Linux上安装Python的PIL和Pillow库处理图片的实例教程
2016/06/23 Python
python实现unicode转中文及转换默认编码的方法
2017/04/29 Python
Python基于time模块求程序运行时间的方法
2017/09/18 Python
Python中socket网络通信是干嘛的
2020/05/27 Python
Django3中的自定义用户模型实例详解
2020/08/23 Python
高分子材料个人求职信范文
2013/09/25 职场文书
初婚初育证明
2014/01/14 职场文书
毕业证代领委托书
2014/09/26 职场文书
《叶问2》观后感
2015/06/15 职场文书
《折线统计图》教学反思
2016/02/22 职场文书
python实现A*寻路算法
2021/06/13 Python
Java版 单机五子棋
2022/05/04 Java/Android