当前位置: 首页 > 图文教程 > 网络编程 > PHP > 网站加速 PHP 缓冲的免费实现方法

PHP
PHP技巧:详解phplib模板使用过程及运行原理
PHP技巧:Smarty+adodb分页示例
PHP技巧:PHP脚本中关于拼写检查函数库
PHP技巧:PHP脚本编程中的文件系统函数库
PHP技巧:PHP中几种删除目录的三种方法
学习PHP技术:txtSQL安装手册中文版
学习PHP:PHP的通用检测函数总结
详细学习PHP中对文件和目录的操作方法
PHP+MYSQL实例:网站在线人数的程序代码
Linux操作系统启动httpd失败的解决方法
初学:在PHP开发中如何使用Session?
PHP初学者遇到的中文乱码解决方案
PHP实例:实现文件上传的程序源码
PHP实例:常用的数值判断函数
PHP实例源代码:PHP实现翻页处理的类
PHP实例:从数组里筛选出重复的数据
PHP实例:用PHP实现windows风格的树型菜单
PHP实例程序:实现给上传图片加水印图案的做法
PHP实例:用PHP编写的网上调查投票系统
PHP实例:一个非常全面获取图象信息的PHP函数

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 38 ::
收藏到网摘: n/a

文/徐永久
  我们知道 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:徐永久 提供本文)