Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。简单的说就是将数据调用到内存中,然后从内存中读取,从而大大提高读取速度。 Memcache是danga的一个项目,最早是LiveJournal 服务的,最初为了加速 LiveJournal 访问速度而开发的,后来被很多大型的网站采用。Memcached是以守护程序方式运行于一个或多个服务器中,随时会接收客户端的连接和操作。 本文介绍windows7下为PHP5.3安装Memcached。
测试环境:
wamp server
windows 7安装memcached
(1)下载Memcached win32类库,下载地址:http://code.jellycan.com/memcached/ 。点击(2)解压缩下载的zip文件到某个目录(例如c:\memcached),目录中有一个memcached.exe 文件。
(3)安装memcached 服务。在命令行下,切换到memcached.exe所在目录,执行以下命令:C:\memcached>memcached -d install
如果你看到一个错误,说“MSVCP71.dll丢失” , 我安装时没有出现这个问题 (4)启动memcached服务,通过以下命令:
C:\memcached>memcached -d start
(5)你可以通过执行以下命令来确认memcached服务是否启动成功:
C:\memcached>wmic process get description, executablepath | findstr memcached.exe
(6)如果你看到类似以下结果,显示memcached.exe及其完整路径,则启动成功啦。
memcached.exe C:\memcached\memcached.exe
安装PHPMemcache扩展
C:\wamp\bin\php\php5.3.0\ext
. (3) 编辑php.ini 添加以下行,来启用该扩展 extension=php_memcache.dll如果你使用的是 WampServer,也可以直接通过,点击wamp图标-》PHP-》PHP Extentions-》勾选上php_memcache 如果一切顺利的话,你就可以用以下代码进行测试了:
connect('localhost', 11211) or die ("Could not connect");$version = $memcache->getVersion();echo "Server's version: ".$version."\n";$tmp_object = new stdClass;$tmp_object->str_attr = 'test';$tmp_object->int_attr = 123;$memcache->set('key', $tmp_object, false, 10) or die ("Failed to save data at the server");echo "Store data in the cache (data will expire in 10 seconds)\n";$get_result = $memcache->get('key');echo "Data from the cache:\n";var_dump($get_result);?>运行结果:
Server's version: 1.2.6Store data in the cache (data will expire in 10 seconds)Data from the cache:object(stdClass)[3] public 'str_attr' => string 'test' (length=4) public 'int_attr' => int 123