1. 安装libevent
由于memcached依赖于libevent库,所以安装memcached之前需要安装libevent。 下载和安装: 将libevent安装到 /home/gang/libevent目录下面。
wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz --no-check-certificate
tar -zxvf libevent-2.0.21-stable.tar.gz
cd libevent-2.0.21-stable
./configure --prefix=/home/gang/libevent
make && make install
2. 安装memcached
下载和安装, with-libevent来设置libevent的安装目录:
wget http://memcached.org/latest
tar -zxvf memcached-1.x.x.tar.gz
cd memcached-1.x.x
./configure --prefix=/home/gang/memcached/ --with-libevent=/home/gang/libevent
make && make install
3. memcached启动参数
-h 显示帮助信息 -p tcp监听端口,默认为 11211 -d 作为守护进程运行 -u 担任启动的用户身份,填用户名 -m 最大内存使用量 -M 内存用尽后返回错误,而不是删掉其他项 -c 最大连接数,默认为1024 -v 打印详细信息 error/warning
-P <file> 将pid保存到文件
-f chunk增长因子 默认为1.25
-n 分配的最小空间 默认48bytes
-I 每个slab page的大小,默认为1M, 范围为1k-128M
-F 禁止使用 flush_all 命令
4. 启动memcached脚本
使用内存为1G, 端口为9000,-u设置启动用户, 以守护进程方式启动。
/home/gang/memcached/bin/memcached -m 1024 -p 9000 -u gang -d
5. 监控memcached
5.1 telnet来查看
telnet 主机名称 端口
telnet localhost 9000连接后通过 status 或 status settings 来查看。
5.2 nc命令来查看
echo "stats settings" | nc localhost 9000返回结果
STAT maxbytes 1073741824
STAT maxconns 1024
STAT tcpport 9000
STAT udpport 9000
STAT inter NULL
STAT verbosity 0
STAT oldest 0
STAT evictions on
STAT domain_socket NULL
STAT umask 700
STAT growth_factor 1.25
STAT chunk_size 48
STAT num_threads 4
STAT num_threads_per_udp 4
STAT stat_key_prefix :
STAT detail_enabled no
STAT reqs_per_event 20
STAT cas_enabled yes
STAT tcp_backlog 1024
STAT binding_protocol auto-negotiate
STAT auth_enabled_sasl no
STAT item_size_max 1048576
STAT maxconns_fast no
STAT hashpower_init 0
STAT slab_reassign no
STAT slab_automove 0
STAT tail_repair_time 3600
STAT flush_enabled yes
END