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 相关文章推荐
php缓存技术介绍
Nov 25 PHP
php empty函数 使用说明
Aug 10 PHP
PHP面向对象学习笔记之一 基础概念
Oct 06 PHP
PHP获取MSN好友列表类的实现代码
Jun 23 PHP
ThinkPHP3.1数据CURD操作快速入门
Jun 19 PHP
微信公众平台网页授权获取用户基本信息中授权回调域名设置的变动
Oct 21 PHP
php+mysql结合Ajax实现点赞功能完整实例
Jan 30 PHP
php文档工具PHP Documentor安装与使用方法
Jan 25 PHP
PHP 输出缓冲控制(Output Control)详解
Aug 25 PHP
PHP集成环境XAMPP的安装与配置
Nov 13 PHP
PHP实现的微信APP支付功能示例【基于TP5框架】
Sep 16 PHP
Laravel 微信小程序后端实现用户登录的示例代码
Nov 26 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
CURL的学习和应用(附多线程实现)
2013/06/03 PHP
PHP控制反转(IOC)和依赖注入(DI)
2017/03/13 PHP
firefox firebug中文入门教程 脚本之家新年特别版
2010/01/02 Javascript
使用隐藏的new来创建对象
2011/03/29 Javascript
nodejs入门详解(多篇文章结合)
2012/03/07 NodeJs
jquery.Jwin.js 基于jquery的弹出层插件代码
2012/05/23 Javascript
php和js对数据库图片进行等比缩放示例
2014/04/28 Javascript
jQuery中select与datalist制作下拉菜单时的区别浅析
2016/12/30 Javascript
详解JS中定时器setInterval和setTImeout的this指向问题
2017/01/06 Javascript
vue实现ToDoList简单实例
2017/02/07 Javascript
nodejs创建简易web服务器与文件读写的实例
2017/09/07 NodeJs
简单理解Vue中的nextTick方法
2018/01/30 Javascript
javascript实现5秒倒计时并跳转功能
2019/06/20 Javascript
中高级前端必须了解的JS中的内存管理(推荐)
2019/07/04 Javascript
vue-cli配置flexible过程详解
2019/07/04 Javascript
html+jQuery实现拖动滑块图片拼图验证码插件【移动端适用】
2019/09/10 jQuery
Django实现自定义404,500页面教程
2017/03/26 Python
Python实现邮件的批量发送的示例代码
2018/01/23 Python
tensorflow学习笔记之简单的神经网络训练和测试
2018/04/15 Python
用python处理图片实现图像中的像素访问
2018/05/04 Python
python3.6的venv模块使用详解
2018/08/01 Python
python变量命名的7条建议
2019/07/04 Python
Python3多线程版TCP端口扫描器
2019/08/31 Python
解决tensorflow训练时内存持续增加并占满的问题
2020/01/19 Python
浅谈anaconda python 版本对应关系
2020/10/07 Python
基于HTML5 Canvas:字符串,路径,背景,图片的详解
2013/05/09 HTML / CSS
餐厅经理岗位职责范本
2014/02/17 职场文书
超市仓管员岗位职责
2014/04/07 职场文书
日语专业求职信
2014/07/04 职场文书
群众路线教育实践活动调研报告
2014/11/03 职场文书
2015年六一儿童节活动总结
2015/02/11 职场文书
文艺晚会开场白
2015/05/29 职场文书
2016年“抗战胜利纪念日”71周年校园广播稿
2015/12/18 职场文书
九年级历史教学反思
2016/02/19 职场文书
为什么RedisCluster设计成16384个槽
2021/09/25 Redis
Java 数据结构七大排序使用分析
2022/04/02 Java/Android