8.Memcache
1.概述
(1) Memcached是什么
Memcached是一款开源的、高性能的、分布式的内存对象缓存系统
(2) Memcached能干什么
最主要的功能就是:在内存中缓存数据,以减轻数据库负载。
它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动
态、数据库驱动网站的速度。
(3) Memcached特点
在内存中以键/值对存储,性能好
协议简单(基于文本行),功能强大
基于libevent的事件处理,无阻塞通信,对内存读写速度非常快
基于客户端的分布式,服务端多个Memcached之间不互相通信
服务端以守护进程运行,客户端可以用任何语言来编写
2. Memcached 安装
下载并安装Memcached服务器端
(1):需要安装libevent,去 http://libevent.org/ 下载 ,然后依次:
解压 tar -zxvf libevent-2.1.8-stable.tar.gz
./configure --prefix=/usr/common/libevent
make
make install
libevent是个程序库,它将Linux的epoll、BSD类操作系统的kqueue等事件
处理功能封装成统一的接口,具有很高的性能。
(2):去http://memcached.org/ 下载最新的源码包
(2.1)解压包,注意下载的是 tar.tar的包,不是tar.gz ,所以解压的时候,
去掉z,也就是tar vxf 就可以了。
(2.2)进入到解压的文件夹里面
(2.3)第一步:需要指定libevent的路径
./configure --prefix=/usr/common/memcached --with-
libevent=/usr/common/libevent/
(2.4)第二步:make
(2.5)第三步:make install
3. 启动Memcached服务端
进入目录: /usr/common/memcached/bin
(3.1) ./memcached -d -m 10 -u root -l 192.168.0.106 -p 2222 -c 256 -P /tmp/memcached.pid
-d选项是启动一个守护进程
-m是分配给Memcache使用的内存数量,单位是MB,这里是10MB
-u是运行Memcache的用户,这里是root
-l是监听的服务器IP地址,这里指定了服务器的IP地址192.168.0.106(虚拟机IP地址)
-p是监听的端口,这里设置了2222,最好是1024以上的端口
-c选项是最大运行的并发连接数,默认是1024,这里设置了256
-P是设置保存Memcache的pid文件,这里是保存在 /tmp/memcached.pid
常用的还有几个需要了解:
-f 块大小增长因子,默认是1.25
-n 最小分配空间, key+value+flags 默认是 48byte
-I 每个slab page的大小
-v/-vv 详细显示工作时各种参数
(3.2) 检查进程是否正常
ps -ef | grep memca
[root@eshop-cache04 bin]# ps -ef | grep memca root 23113 1 0 20:03 ? 00:00:00 ./memcached -d -m 10 -u root -l 192.168.0.106 -p 2222 -c 256 -P /tmp/memcached.pid root 23144 1686 0 20:05 pts/0 00:00:00 grep memca
(3.3) 登录
[root@eshop-cache04 bin]# telnet 192.168.0.106 2222 Trying 192.168.0.106... Connected to 192.168.0.106. Escape character is '^]'.
4. 关闭Memcached
先用 ps aux|grep memcached找到进程号,然后kill掉
kill -9 23113
5. Memchaced 基本原理