1.编译前,先确认gcc、make、patch等编译工具是否已安装,并可正常使用。
2.Libevent是一个异步事件处理软件函式库,以BSD许可证释出。Memcached 依赖Libevent,因此必须先编译安装Libevent。
wget https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/libevent-2.1.8-stable.tar.gz
tar xzvf libevent-2.1.8-stable.tar.gz
cd libevent-2.1.8-stable
./configure
make
make install
3.安装Memcached
wget http://memcached.org/files/memcached-1.5.1.tar.gz
tar xvzf memcached-1.5.1.tar.gz
cd memcached-1.5.1
./configure --prefix=/usr/local/memcached/
make
make install
4.创建软链 否则会提示找不到 libevent目录
ln -s /usr/local/lib/libevent-2.1.so.6 /lib/libevent-2.1.so.6
5./usr/local/memcached/bin/memcached -h 命令帮助
6.作为前台程序运行:从终端输入以下命令,启动memcached:
/usr/local/memcached/bin/memcached -p 11211 -m 64m -vv
7.作为后台服务程序运行:
telnet 127.0.0.1 11211
/*******/
8.Memcached set 命令用于将 value(数据值) 存储在指定的 key(键) 中。
如果set的key已经存在,该命令可以更新该key所对应的原来的数据,也就是实现更新的作用。
set 命令的基本语法格式如下:
set key flags exptime bytes [noreply]
value
key:键值 key-value 结构中的 key,用于查找缓存值。
flags:可以包括键值对的整型参数,客户机用它存储关于键值对的额外信息 。
exptime:在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)
bytes:在缓存中存储的字节数
noreply(可选): 该参数告知服务器不需要返回数据
value:存储的值(始终位于第二行)(可直接理解为key-value结构中的value)
实例
以下实例中我们设置:
key → runoob
flag → 0
exptime → 900 (以秒为单位)
bytes → 9 (数据存储的字节数)
value → memcached
set runoob 0 900 9
memcached
STORED
get runoob
VALUE runoob 0 9
memcached
END
/********/
9.安装php-memcache扩展
列出所有的软件包 sudo apt-cache search all
列出指定关键词的 软件包 sudo apt-cache search all | grep memcache
sudo apt-get install php-memcache
13.sudo /etc/init.d/php5.6-fpm reload 查看phpinfo()出现memcache扩展
14.在php页面实例化 memcache(不是memcached)
$mem = new \Memcache();
if(!$mem->connect("localhost",11211)){
die('连接失败!');
}else{
$mem->set("fhmsky","freemsky5643");
}
$value = $mem -> get("fhmsky");