本文实例讲述了Linux下安装Memcached服务器和客户端与php使用。分享给大家供大家参考,具体如下:
Memcached是高性能的分布式内存缓存服务器,通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的速度和可扩展性。
系统环境:CentOS 7.2 64位 Apache2.4.33
安装libevent依赖库
wget https://github.com/downloads/libevent/libevent/libevent-2.0.15-stable.tar.gz tar -zxvf libevent-2.0.15-stable.tar.gz cd libevent-2.0.15-stable ./configure --prefix=/usr/local make sudo make install
安装Memcached服务器
wget http://memcached.googlecode.com/files/memcached-1.4.9.tar.gz tar -zxvf memcached-1.4.9.tar.gz cd memcached-1.4.9 ./configure --prefix=/usr/local/memcached make sudo make install
启动Memcache服务器:
/usr/local/memcached/bin/memcached -d -m 128 -u root -p 11211
安装Memcached客户端
wget http://pecl.php.net/get/memcache-2.2.5.tgz tar -zxvf memcache-2.2.5.tgz cd memcache-2.2.5 ./configure --enable-memcache --with-php-config=/usr/bin/php-config --with-zlib-dir make sudo make install
【make报错: *** [memcache.lo] Error 1】解决方法:
进入memcache安装目录,找到mamcache.c文件,将所有的zend_list_insert加上TSRMLS_CC,形如:zend_list_insert(pool, le_memcache_pool TSRMLS_CC);
客户端安装好之后,我们发现PHP扩展库中多了一个memcache.so
在PHP配置文件php.ini中加入该扩展:
extension=/usr/local/php/lib/php/extensions/no-debug-zts-20131226/memcache.so
重启服务器,通过输出phpinfo()查看该扩展相关信息
下面写一个简单的例子,实现memcache扩展与Memcached服务器的交互
<?php $mc = new Memcache(); //创建Memcache对象 $mc->connect("127.0.0.1", 11211); //连接Memcached服务器 $mc->set('test','hello world',0,10); //存储数据 echo $mc->get('test'); //获取数据 $mc->delete('test'); //删除数据 $mc->flush(); //强制刷新全部缓存,即清空Memcached服务器 $mc->close(); //断开与Memcached服务器的连接
希望本文所述对大家PHP程序设计有所帮助。