网站加速 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的垃圾回收机制详解
Oct 28 PHP
php+mysql不用递归实现的无限级分类实例(非递归)
Jul 08 PHP
PHP简单获取视频预览图的方法
Mar 12 PHP
PHP动态柱状图实现方法
Mar 30 PHP
PHP5.5迭代生成器用法实例详解
Mar 16 PHP
PHP递归遍历多维数组实现无限分类的方法
May 06 PHP
PHP怎样用正则抓取页面中的网址
Aug 09 PHP
详解PHP编码转换函数应用技巧
Oct 22 PHP
ThinkPHP 整合Bootstrap Ajax分页样式
Dec 23 PHP
PHP错误处理函数register_shutdown_function使用示例
Jul 03 PHP
PHP ajax+jQuery 实现批量删除功能实例代码小结
Dec 06 PHP
浅谈PHP无限极分类原理
Mar 14 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
用js实现键盘方向键翻页功能的代码
2007/06/03 Javascript
jquery 选择器部分整理
2009/10/28 Javascript
ToolTips JQEURY插件之简洁小提示框效果
2011/11/19 Javascript
JavaScript Scoping and Hoisting 翻译
2012/07/03 Javascript
jquery实现控制表格行高亮实例
2013/06/05 Javascript
jqeury-easyui-layout问题解决方法
2014/03/24 Javascript
jQuery实现按钮的点击 全选/反选 单选框/复选框 文本框 表单验证
2015/06/25 Javascript
javascript字符串替换函数如何一次性全部替换掉
2015/10/30 Javascript
JavaScript 数组中最大最小值
2016/06/05 Javascript
JavaScript数值千分位格式化的两种简单实现方法
2016/08/01 Javascript
利用Mongoose让JSON数据直接插入或更新到MongoDB
2017/05/03 Javascript
Vue如何实现组件的源码解析
2017/06/08 Javascript
Angular在模板驱动表单中自定义校验器的方法
2017/08/09 Javascript
原生实现一个react-redux的代码示例
2018/06/08 Javascript
微信小程序实现星级评分和展示
2018/07/05 Javascript
小程序实现图片预览裁剪插件
2019/11/22 Javascript
js仿360开机效果
2019/12/26 Javascript
[50:34]VGJ.T vs Fnatic 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python中的生成器和yield详细介绍
2015/01/09 Python
python八大排序算法速度实例对比
2017/12/06 Python
Python读写docx文件的方法
2018/05/08 Python
详解基于django实现的webssh简单例子
2018/07/17 Python
基于python代码实现简易滤除数字的方法
2018/07/17 Python
详解用Python练习画个美队盾牌
2019/03/23 Python
python实现人脸签到系统
2020/04/13 Python
PyCharm MySQL可视化Database配置过程图解
2020/06/09 Python
python线性插值解析
2020/07/05 Python
解决pycharm导入numpy包的和使用时报错:RuntimeError: The current Numpy installation (‘D:\\python3.6\\lib\\site-packa的问题
2020/12/08 Python
值类型与引用类型有什么不同?请举例说明?并分别列举几种相应的数据类型
2015/10/24 面试题
大学生护理专业自荐信
2013/10/03 职场文书
安全事故检讨书
2014/01/18 职场文书
历史学专业求职信
2014/06/19 职场文书
报考公务员诚信承诺书
2014/08/29 职场文书
爱国主题班会教案
2015/08/14 职场文书
员工升职自我评价
2019/03/26 职场文书
详解Anyscript开发指南绕过typescript类型检查
2022/09/23 Javascript