一、memcache简介
Memcache是什么
Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力。
它可以应对任意多个连接,使用非阻塞的网络IO。由于它的工作机制是在内存中开辟一块空间,然后建立一个HashTable,Memcached自管理这些HashTable。
Memcache官方网站,更多详细的信息可以来这里了解
为什么会有Memcache和memcached两种名称?
其实Memcache是这个项目的名称,而memcached是它服务器端的主程序文件名。一个是项目名称,一个是主程序文件名,不要混用了。
二、Memcache的安装
安装分为两个过程:memcache服务器端的安装和memcached客户端的安装。
所谓服务器端的安装就是在服务器(一般都是linux系统)上安装Memcache实现数据的存储
所谓客户端的安装就是指php(或者其他程序,Memcache还有其他不错的api接口提供)去使用服务器端的Memcache提供的函数,需要php添加扩展。
2.1、memcache服务器的安装
这里安装memcache需要指定libevent,查看系统是否已经安装libevent
rpm -qa | grep libevent
如果已经有,先进行升级
yum -y install libevent
测试libevent是否已经安装成功
ll /usr/share/doc/ | grep libevent
可以看到有已经安装类包
进行安装memchache (到官网下载自己需要的软件版本)
解压文件并将文件移动到 /usr/local/ 目录下
进入memcache目录进行安装
可能会有一个报错
因为libevent这个包是系统默认安装的,没有安装相应的开发所用的头文件,所以需要使用以下命令进行安装
再次编译即可通过,编译通过后执行 make && make install命令进行安装
启动memcache
/usr/local/memcached/bin/memcached -d -m 128 -l 172.31.8.50 -p 11211 -u root
进行连接测试
telnet 172.31.8.50 11211 #出现以下内容即为安装成功
输出数据的格式如下:
set foo 0 0 3
bar
如果保存成功,控制台会输出STORED
获取数据的命令格式如下
get foo
在控制台的输出信息如下
链接到memcache后输入stats可以获得包括资源利用率在内的个种信息
此外输入”stats items”可以获得关于缓存记录的信息,推出程序输入“quit”
这些参数的具体含义可以参考下面的列表