快速业务通道

为PHP应用提速、提速、再提速!第1部分

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-22
其发行版可能已经包含了 XCache 或者已经将其以预先打包好的格式提供给您。

增加 Mac OS X 的共享内存

首先增加 Mac OS X 上留出的共享内存总量。要实现这一目的,需创建(或编辑)文件 /etc/sysctl.conf 并创建如下条目:

清单 1. 增加 Mac OS X 上留出的共享内存总量

kern.sysv.shmmax=33554432
kern.sysv.shmmin=1
kern.sysv.shmmni=32
kern.sysv.shmseg=8
kern.sysv.shmall=8192

这些设置把共享内存总量增加到了 32 MB。如还需进一步扩展共享内存,可以把 kern.sysv.shmall 设定为 kern.sysv.shmmax 除以硬件页面大小。使用 sysctl hw.pagesize 能获得硬件页面大小。例如,假设需要 128 MB 的共享内存,那么设定 kern.sysv.shmmax=134217728 并设定 kern.sysv.shmall=32768。

重启 Mac OS X 使修改生效。重启后,检验新设置是否生效,键入:

sysctl -a | grep kern.sysv

通过源代码构建 XCache

接下来,通过源代码构建 XCache。从 http://xcache.lighttpd.net 处下载源代码。下载完后解压代码,并转换到 .tar 文件创建的新目录。

清单 2. 通过源代码构建 XCache

$ cd /tmp
$ wget http://210.51.190.228/pub/XCache/Releases/xcache-1.2.0.tar.gz
$ tar xzf xcache-1.2.0.tar.gz
$ cd xcache

运行 phpize 为编译 XCache 做准备。

清单 3. 运行 phpize

$ phpize
Configuring for:
PHP Api Version:     20020918
Zend Module Api No:   20020429
Zend Extension Api No:  20050606

运行 configure,创建适合于原生操作系统的 makefile。

清单 4. 运行 configure 创建 makefile

$ ./configure --enable-xcache --enable-xcache-coverager
checking build system type... i686-apple-darwin8.8.1
checking host system type... i686-apple-darwin8.8.1
...
creating libtool
configure: creating ./config.status
config.status: creating config.h

此处,--enable-xcache 选项包含 XCache 支持,--enable-xcache-coverager 选项包含用于测量加速器功效的附加特性。要启用操作码优化,添加 --enable-xcache-optimizer。

当然,下一步将使用 make 命令行构建和安装代码。运行 make,然后作为 root 用户运行 make install 。

清单 5. 利用make构建和安装代码

$ make
...
cp ./xcache.so /Users/strike/tmp/xcache/modules/xcache.so
Build complete.
$ sudo make install
Installing shared extensions: /usr/lib/php/extensions/no-debug-non-zts-20020429/

如果上述两项操作顺利完成,那么 XCache 将位于 /usr/lib/php/extensions/no-debug-non-zts-20020429/xcache.so。(路径 /usr/lib/php/extensions/no-debug-non-zts-20020429 反映了正在使用的 API 版本和用于构建 PHP 的编译选项。如果启用了试用的 Zend Thread Safety 特性,则 "no-debug" 应为 "debug","non-zts" 应为 "zts"。)

修改 php.ini 文件

因为安装了扩展,所以必需修改 php.ini 文件,使之包含 XCache 扩展并对其进行配置。打开文件 /private/etc/php.ini,在其中添加如下代码行:

清单 6. 为 XCache 扩展修改 php.ini 文件

[xcache-common]
zend_extension   = /usr/lib/php/extensions/no-debug-non-zts-20020429/xcache.so
[xcache.admin]
; Change xcache.admin.user to your preferred login name
xcache.admin.user  = "admin"
; Change xcache.admin.pass to the MD5 fingerprint of your password
; Use md5 -s "your_secret_password" to find the fingerprint
xcache.admin.pass  = "0ad72f3f352fcd8acdf266bafd0ac48d"
[xcache]
; Change xcache.size t

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号