Wamp Server 2.5 环境下安装memcache扩展的全过程

使用wordpress也好多年了,但从来没去研究过缓存机制;今天仔细阅读了我爱水煮鱼关于wordpress性能优化的文章,决定学习和了解一下memcached;
百度了很多很多别人分享安装的文章,导致安装过程曲折离奇。
直至最后安装好,才发现:所有的问题全因自己缺乏对应用环境的了解!
现记录下来,一并整理自己所遇到的坑。

一、操作系统

Windows 7 旗舰版 64位操作系统

二、Wamp Server 2.5环境

Apache/2.4.9 (Win32)
PHP/5.5.12

三、安装Memcached

3.1 概念

Memcached 是以 LiveJournal 旗下 Danga Interactive 公司的 Brad Fitzpatric 为首开发的一款分布式缓存服务器,基于内存,性能非常高,现在已成为mixi、hatena、Facebook、Vox、LiveJournal等众多服务中提高Web应用扩展性的重要因素(更多介绍参见:维基百科百科百科)。

3.2 下载

百度出很多,还是推荐个亲测并靠谱的吧:Various versions of Memcached for Windows
根据我个人的测试结果,其中Memcached 1.4.4 for Windows (32 Bits)可正确安装于windows 7.

说明:
操作系统是64位的,而wamp 却是32位;
所以,在选择Memcached时,注意要选择32位的;若选择64位的Memcached,安装时会提示“Failed to ignore SIGHUP: Result too large”的错误:

另外也说明一下,出现这个错误,不一定全是因为系统版本的问题;win7环境下选择Memcached的版本过高也会引起这样的错误提示;究竟怎么解决这个问题还不知道,有兴趣的朋友可以参考这个地址了解Memcached的源码:http://www.cnblogs.com/haippy/archive/2012/09/01/2666856.html

3.3 安装过程

安装命令并不复杂,主要需要注意的是执行CMD命令时,必须以管理员身份运行。
大致命令如下:
安装命令
memcached -d install
服务启动命令
memcached -d start

其他更详细的说明,以及参考修改,可参考:http://blog.csdn.net/zhaotengfei36520/article/details/41315329

四、安装php_memcache扩展

4.1 下载php_memcache.dll

官方下载页面:http://windows.php.net/downloads/pecl/releases/memcache/3.0.8/
这里需注意php的版本,Wamp 2.5搭载的是PHP 5.5,所以下载php_memcache.dll文件时,需注意对应版本。
我选择的是:php_memcache-3.0.8-5.5-ts-vc11-x86.zip
这里有个坑,自己总认为版本越新越好,然后下载了3.08-5.6的压缩包。结果导致php死活加载不了,大致有如下错误:
PHP Warning: PHP Startup: memcache: Unable to initialize module
或者
PHP Warning: PHP Startup: Unable to load dynamic library ‘/wamp/bin/php/php5.5.12/ext/php_memcache.dll’
出现以上错误,基本上可以确定php_memcache下载错了。

4.2 安装

下载回来的压缩包解压后,将php_memcache.dll文件拷贝到/wamp/bin/php/php5.5.12/ext目录下,并修改php.ini配置文件。
这里需要注意,wamp默认的php.ini文件位置在/wamp/bin/apache/apache2.4.9/bin目录下,而不是php所在路径。可通过查看phpinfo()输出的内容验证。

extension=php_memcache.dll
将该句添加到php.ini中后,重启wamp后进行测试。


其他参考:
How to enable memcache in WAMP
windows下wamp装不上memcache扩展
php_memcache.dll for WAMP 2.5 – PHP : 5.5.12 – Window8:64 Bit – VC11

发表评论

电子邮件地址不会被公开。 必填项已用*标注