Linux下安装Memcached服务器和客户端与PHP使用示例

时间:2022-07-27
本文章向大家介绍Linux下安装Memcached服务器和客户端与PHP使用示例,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

本文实例讲述了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服务器的连接