memcached是基于libevent的

libevent是个程序库,它将Linux的epoll、BSD类操作系统的kqueue等事件处理功能封装成统一的接口。即使对服务器的连接数增加,也能发挥O(1)的性能。 memcached使用这个libevent库,因此能在Linux、BSD、Solaris等操作系统上发挥其高性能。

memcached的安装其实很简单:

1.由于memcached是基于libevent的,因此需要安装libevent,libevent-devel

yum install  libevent libevent-devel -y

测试libevent是不是已经安装成功
# ls -al /usr/lib | grep libevent  

2.进入到http://memcached.org/ 下载tar包

cd /home/dxk

wget http://memcached.googlecode.com/files/memcached-1.4.5.tar.gz

tar -xzvf  memcached-1.4.5.tar.gz

cd memcached-1.4.5

3.然后编译安装

可以先查看编译参数 
# ./configure –h
如果你的系统是64bit的,则加在:–enable-64bit 可以分配大于2G的内存

如果你的系统是多个CPU或者是多核的CPU,则加在:–enable-threads

使用uname -a可以查看操作系统

./configure –prefix=/home/dxk/soft/memcached –with-libevent=/usr

make

make install

测试memcache服务器端
/home/dxk/soft/memcached/bin/memcached -h

安装完毕后,用守护进程方式启动memcached

memcached -d start  -u  nobody  -m  1024 -p 11211 -c  2048  -P  /tmp/memcached.pid

memcached命令参数解释:

-p <num>          监听的端口
-l <ip_addr>      连接的IP地址, 默认是本机
-d start          启动memcached 服务
-d restart        重起memcached 服务
-d stop|shutdown  关闭正在运行的memcached 服务
-d install        安装memcached 服务
-d uninstall      卸载memcached 服务
-u <username>     以<username>的身份运行 (仅在以root运行的时候有效)
-m <num>          最大内存使用,单位MB。默认64MB
-M                内存耗尽时返回错误,而不是删除项
-c <num>          最大同时连接数,默认是1024
-f <factor>       块大小增长因子,默认是1.25
-n <bytes>        最小分配空间,key+value+flags默认是48
-h                显示帮助

可以用以下两种方式查看memcached的状态

一、telnet 方式

监控状态:
telnet 127.0.0.1 11211
stats 显示服务器信息、统计数据等
stats reset 清空统计数据
stats malloc 显示内存分配数据
stats maps 

会显示一串参数和值的,中文解释如下

pid32u服务器进程IDuptime32u服务器运行时间,单位秒time32u服务器当前的UNIX时间versionstring服务器的版本号rusage_user32u:32u该进程累计的用户时间
(秒:微妙)rusage_system32u:32u该进程累计的系统时间
(秒:微妙)curr_items32u服务器当前存储的内容数量total_items32u服务器启动以来存储过的内容总数bytes64u服务器当前存储内容所占用的字节数curr_connections32u连接数量total_connections32u服务器运行以来接受的连接总数connection_structures32u服务器分配的连接结构的数量cmd_get32u取回请求总数cmd_set32u存储请求总数get_hits32u请求成功的总次数get_misses32u请求失败的总次数bytes_read64u服务器从网络读取到的总字节数bytes_written64u服务器向网络发送的总字节数limit_maxbytes32u服务器在存储时被允许使用的字节总数