memcached 使用

8/1/2016 memcached缓存

# memcached使用及相关配置和使用

# linux下memcached的启动/结束的方式

当前项目中,linux下memcached的启动/结束的方式

默认情况下memcached安装到/usr/local/bin下。

进入安装目录,启动memcached:/usr/local/memcached/bin/memcached -d -c 10240 -m 1024 -u root
获取运行状态:echo stats | nc localhost 11211(可以查看出pid) 或使用ps -ef|grep memcached
停止memcached:kill -9 pid  (-9表示强制杀死,pid 为进程的进程标识符)
-d 选项是启动一个守护进程,
-m 是分配给memcache使用的内存数量,单位是mb,这里是1024mb,默认是64mb
-u 是运行memcache的用户,这里是root
-l 是监听的服务器ip地址,默认应该是本机
-p 是设置memcache监听的端口,默认是11211,最好是1024以上的端口
-c 选项是最大运行的并发连接数,默认是1024,这里设置了10240,按照你服务器的负载量来设定
-p 是设置保存memcache的pid文件位置
-h 打印帮助信息
-v 输出警告和错误信息
-vv 打印客户端的请求和返回信息
1
2
3
4
5
6
7
8
9
10
11
12
13
ps -ef|grep memcached(命令说明) 
grep:功能说明:查找文件里符合条件的字符串。
|:管道命令操作符
ps(process status):功能说明:报告程序状况。
1
2
3
4

连接到 memcached:

telnet ip 端口,如telnet 192.168.100.11 11211
stats查看状态,flush_all:清楚缓存
查看memcached状态的基本命令,通过这个命令可以看到如下信息:
stat pid 22459                             进程id
stat uptime 1027046                        服务器运行秒数
stat time 1273043062                       服务器当前unix时间戳
stat version 1.4.4                         服务器版本
stat pointer_size 64                       操作系统字大小(这台服务器是64位的)
stat rusage_user 0.040000                  进程累计用户时间
stat rusage_system 0.260000                进程累计系统时间
stat curr_connections 10                   当前打开连接数
stat total_connections 82                  曾打开的连接总数
stat connection_structures 13              服务器分配的连接结构数
stat cmd_get 54                            执行get命令总数
stat cmd_set 34                            执行set命令总数
stat cmd_flush 3                           指向flush_all命令总数
stat get_hits 9                            get命中次数
stat get_misses 45                         get未命中次数
stat delete_misses 5                       delete未命中次数
stat delete_hits 1                         delete命中次数
stat incr_misses 0                         incr未命中次数
stat incr_hits 0                           incr命中次数
stat decr_misses 0                         decr未命中次数
stat decr_hits 0                           decr命中次数
stat cas_misses 0                          cas未命中次数
stat cas_hits 0                            cas命中次数
stat cas_badval 0                          使用擦拭次数
stat auth_cmds 0
stat auth_errors 0
stat bytes_read 15785                      读取字节总数
stat bytes_written 15222                   写入字节总数
stat limit_maxbytes 1048576                分配的内存数(字节)
stat accepting_conns 1                     目前接受的链接数
stat listen_disabled_num 0                
stat threads 4                             线程数
stat conn_yields 0
stat bytes 0                               存储item字节数
stat curr_items 0                          item个数
stat total_items 34                        item总数
stat evictions 0                           为获取空间删除item的总数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40

另外一个例子: 启动/结束

memcached -d -m 10 -u root -l 192.168.0.122 -p 11200 -c 256 -p /tmp/memcached.pid
-d 选项是启动一个守护进程,
-m 是分配给memcache使用的内存数量,单位是mb,这里是10mb
-u 是运行memcache的用户,这里是root
-l 是监听的服务器ip地址,如果有多个地址的话,这里指定了服务器的ip地址192.168.0.122
-p 是设置memcache监听的端口,这里设置了12000,最好是1024以上的端口
-c 选项是最大运行的并发连接数,默认是1024,这里设置了256,按照你服务器的负载量来设定
-p 是设置保存memcache的pid文件
kill `cat /tmp/memcached.pid`
1
2
3
4
5
6
7
8
9

获取运行状态

echo stats | nc 192.168.1.123 11200
watch "echo stats | nc 192.168.1.123 11200" (实时状态)
1
2