emcached是一个高性能的分布式内存对象缓存系统。通过在内存里维护一个统一的巨大的hash表,来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果。简单的说,就是将磁盘中的数据存储在内存中,然后程序直接从内存中读取数据,减少磁盘的I/O开销,从而提高数据的读取速度。下面来介绍memcached的安装方法。
下载memcached服务端,并解压:
cd /usr/local/src
wget http://www.memcached.org/files/memcached-1.4.22.tar.gz
tar -zxvf memcached-1.4.22.tar.gz
cd memcached-1.4.22
./configure
make && make install
memcached -V #注意是大写
出现如下图所示,即表示安装成功。
memcached服务端安装完成之后,再需要安装memcached扩展,PHP程序才正常操作memcached。
安装memcached扩展之前,需要先安装libmemcached包。
wget https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz
tar -zxvf libmemcached-1.0.18.tar.gz
cd libmemcached-1.0.18
./configure
make && make install
libmemcached安装成功后,再安装memcached扩展。
cd /usr/local/src
wget http://pecl.php.net/get/memcached-2.2.0.tgz
tar -zxvf memcached-2.2.0.tgz
cd memcached-2.2.0
/usr/local/php/bin/phpize
./configure -enable-memcache -with-php-config=/usr/local/php/bin/php-config
make && make install
安装中可能会出现如下错误:
在编译过程中需要将memcached-sasl功能禁用掉。执行如下命令:
./configure --with-php-config=/usr/local/php/bin/php-config --disable-memcached-sasl
如此,memcached扩展即安装成功。
memcached扩展安装完成之后,需要在php.ini中添加扩展包。
vi /usr/local/php/etc/php.ini
extension=memcached.so
保存退出。
重启nginx和php-fpm后,通过如下命令查看php中是否加载了memcached的扩展
php -m
若列表出现了"memcached"的字样,即表示PHP程序能正常操作memcached了。
在index.php里输入如下代码:
$memcache = new \Memcached();
$memcache -> addServer('localhost', '11211');
var_dump($memcache -> set('bb', 'test', 0, time()+5));
var_dump($memcache -> get('bb'));
运行此程序,在浏览器中能正常打印出“test”字样,即表示PHP已经能正常操作memcached了。