php-accelerator网站加速PHP缓冲的方法


Posted in PHP onJuly 30, 2008

http://php-accelerator.co.uk/ 可以下载,是zend的强劲对手。是免费的。我已经在用啦。效果还不错。
修改 PHP.ini 加上:
zend_extension = /usr/local/lib/php_accelerator_1.3.3r2.so
phpa = on
phpa.tweaks = on
phpa.cache_dir = /tmp
phpa.file_perms = 400
phpa.cache_file_prune_period = 1h
phpa.cache_file_ttl = 1d
phpa.shm_size = 10
phpa.shm_key = 0xc0deb00
phpa.shm_perms = 666
phpa.shm_user = nobody
phpa.shm_group = nobody
phpa.shm_release_at_exit = on
phpa.shm_stats_check_period = 5m
phpa.shm_ttl = 12h
phpa.shm_max_processes = 512
phpa.shm_lock_threshold0 = 10

apachectl graceful 就能用啦。具体参数看它的文档。

 

我们在 “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 架构的,所以性能上的提升只会是论坛系统的提升

PHP 相关文章推荐
ip签名探针
Oct 09 PHP
打造计数器DIY三步曲(中)
Oct 09 PHP
PHP中集成PayPal标准支付的实现方法分享
Feb 06 PHP
php简单防盗链实现方法
Jul 29 PHP
php开发工具有哪五款
Nov 09 PHP
使用symfony命令创建项目的方法
Mar 17 PHP
Smarty变量用法详解
May 11 PHP
PHP中单例模式与工厂模式详解
Feb 17 PHP
php获取linux命令结果的实例
Mar 13 PHP
Windows平台实现PHP连接SQL Server2008的方法
Jul 26 PHP
php封装单文件上传到数据库(路径)
Oct 15 PHP
实例讲解php实现多线程
Jan 27 PHP
新安装的MySQL数据库需要注意的安全知识
Jul 30 #PHP
说明的比较细的php 正则学习实例
Jul 30 #PHP
MySql中正则表达式的使用方法描述
Jul 30 #PHP
php自动跳转中英文页面
Jul 29 #PHP
PHP一些常用的正则表达式字符的一些转换
Jul 29 #PHP
php 全文搜索和替换的实现代码
Jul 29 #PHP
PHP中$_SERVER的详细参数与说明
Jul 29 #PHP
You might like
计算2000年01月01日起到指定日的天数
2006/10/09 PHP
Godaddy空间Zend Optimizer升级方法
2010/05/10 PHP
Yii2.0多文件上传实例说明
2017/07/24 PHP
用XMLDOM和ADODB.Stream实现base64编码解码实现代码
2010/11/28 Javascript
JavaScript中URL编码函数代码
2011/01/11 Javascript
JavaScript对象和字串之间的转换实例探讨
2013/04/21 Javascript
js中for in的用法示例解析
2013/12/25 Javascript
JavaScript中创建对象和继承示例解读
2014/02/12 Javascript
基于JavaScript实现div层跟随滚动条滑动
2016/01/12 Javascript
JavaScript中的操作符类型转换示例总结
2016/05/30 Javascript
老生常谈的跨域处理
2017/01/11 Javascript
jQuery实现弹窗居中效果类似alert()
2017/02/27 Javascript
jQuery实现的页面详情展开收起功能示例
2018/06/11 jQuery
如何提升vue.js中大型数据的性能
2019/06/21 Javascript
JS实现容器模块左右拖动效果
2020/01/14 Javascript
js简单实现自动生成表格功能示例
2020/06/02 Javascript
vue-cli 3如何使用vue-bootstrap-datetimepicker日期插件
2021/02/20 Vue.js
Python开发WebService系列教程之REST,web.py,eurasia,Django
2014/06/30 Python
Python基于pandas实现json格式转换成dataframe的方法
2018/06/22 Python
Python 修改列表中的元素方法
2018/06/26 Python
详解Python传入参数的几种方法
2019/05/16 Python
Python使用pymysql模块操作mysql增删改查实例分析
2019/12/19 Python
python爬虫实现POST request payload形式的请求
2020/04/30 Python
在django中实现choices字段获取对应字段值
2020/07/12 Python
css3 2D图片转动样式可以扩充到Js当中
2014/04/29 HTML / CSS
美国精油公司:Plant Therapy
2019/05/17 全球购物
波兰电子产品购物网站:Vobis
2019/05/26 全球购物
.NET remoting的两种通道是什么
2016/05/31 面试题
建筑工程技术应届生自荐信
2013/09/27 职场文书
《富饶的西沙群岛》教学反思
2014/04/09 职场文书
先进工作者推荐材料
2014/12/23 职场文书
2019客服个人年终工作总结范文
2019/07/08 职场文书
浏览器常用基本操作之python3+selenium4自动化测试(基础篇3)
2021/05/21 Python
ORACLE查看当前账号的相关信息
2021/06/18 Oracle
利用uni-app生成微信小程序的踩坑记录
2022/04/05 Javascript
Python使用华为API为图像设置多个锚点标签
2022/04/12 Python