memcached经常使用命令说明

1、存储

存储命令式:java

<command name> <key> <flags> <exptime> <bytes> <data block>

参数说明以下:
命令                            用法
<command name>       set/add/replace/append/preappend
<key>                         key 用于查找缓存值
<flags>                       能够包括键值对的整型参数,客户机使用它存储关于键值对的额外信息
<exptime>                   该数据的存活时间,0表示永远
<bytes>                       存储字节数
<data block>                存储的数据块(可直接理解为key-value结构中的value)缓存

一、set
set命令用于向缓存添加新的键值对。若是键已经存在,则以前的值将被替换,实现了更新的做用。若是成功,服务器将会返回STORED
服务器

set userid 0 0 3
123
STORED

二、add
仅当缓存中不存在键时,add命令才会向缓存中添加一个键值对。若是缓存中已经存在键,则以前的值将仍然保持相同,
而且您将得到响应NOT_STORED
app

add userid 0 0 3
234
NOT_STORED

add useraddress 0 0 8
hangzhou
STORED

三、replace
仅当键已经存在时,replace命令才会替换缓存中的键。若是缓存中不存在键,那么您将从 memcached 服务器接受到一条NOT_STORED响应。memcached

replace userid 0 0 3
234
STORED

replace province 0 0 8
zhejiang
NOT_STORED

四、append
仅当键已经存在时,append命令才会在存在的值添加值。若是缓存中不存在键,那么您将从 memcached 服务器接受到一条NOT_STORED响应。fetch

append userid 0 0 1
5
STORED

append province 0 0 8
jiangshu
NOT_STORED

五、prepend
仅当键已经存在时,append命令才会在存在的值添加值。若是缓存中不存在键,那么您将从 memcached 服务器接受到一条NOT_STORED响应。 ui

prepend province 0 0 5
anhui
NOT_STORED

prepend userid 0 0 1
6
STORED

2、读取

读取的命令格式:spa

<command name> <key>

服务端返回:
操作系统

<exptime> <bytes> VALUES<data block>

一、get
get命令的key能够表示一个或者多个键,键之间以空格隔开指针

get username userid
VALUE username 0 12
hahahahahaha
VALUE userid 0 5
62345

二、gets
gets命令的功能相似于基本的get命令。两个命令之间的差别在于,gets返回的信息稍微多一些:64 位的整型值很是像名称/值对的 “版本” 标识符。

gets username userid
VALUE username 0 12 6
hahahahahaha
VALUE userid 0 5 12
62345

gets命令将返回一个额外的值 — 在本例中是整型值6和12,用于标识名称/值对。若是对此名称/值对执行另外一个set命令,则gets返回的额外值将会发生更改。

set userid 0 0 5
12345
STORED
gets userid
VALUE userid 0 5 13
12345

返回值已经被更改成13了,每次修更名称/值对时,该值都会发生更改。

3、删除

删除命令格式:

<command name> <key>

delete
delete命令用于删除 memcached 中的任何现有值。使用一个键调用delete,若是该键存在于缓存中,则删除该值。若是不存在,则返回一条NOT_FOUND消息。

delete userid
DELETED
delete name 
NOT_FOUND

4、状态

一、stats
显示服务器信息、统计数据等。

STAT pid 3581 --memcached进程号
STAT uptime 5272 --memcached server自启动到如今的时间(秒)
STAT time 1342743071 --当前UNIX的时间
STAT version 1.4.13 --memcached server的版本号
STAT libevent 1.4.13-stable 
STAT pointer_size 32 --操做系统默认的指针大小
STAT rusage_user 0.020996 
STAT rusage_system 0.172973
STAT curr_connections 5 --当前的客户端链接数
STAT total_connections 0 --server从启动到如今,累计的客户端链接数
STAT connection_structures 6 --server分配的链接结构数
STAT reserved_fds 20
STAT cmd_get 0 --memcached读次数
STAT cmd_set 0 --memcached写次数
STAT cmd_flush 0 
STAT cmd_touch 0
STAT get_hits 0 --memcached读缓存未命中次数
STAT get_misses 0 --memcached读缓存命中次数
STAT delete_misses 0
STAT delete_hits 0
STAT incr_misses 0
STAT incr_hits 0
STAT decr_misses 0
STAT decr_hits 0
STAT cas_misses 0
STAT cas_hits 0
STAT cas_badval 0
STAT touch_hits 0
STAT touch_misses 0
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 62 --从cache中读取的总字节数
STAT bytes_written 1200 --写入cache的总字节数
STAT limit_maxbytes 314572800 --该memcached server分配的最大内存数量
STAT accepting_conns 1
STAT listen_disabled_num 0
STAT threads 4
STAT conn_yields 0
STAT hash_power_level 16
STAT hash_bytes 262144
STAT hash_is_expanding 0
STAT expired_unfetched 0
STAT evicted_unfetched 0
STAT bytes 138
STAT curr_items 2 --当前存储的item数目
STAT total_items 0 --erver从启动到如今,总共累计存储的item数目
STAT evictions 0
STAT reclaimed 0

平均每秒请求获取缓存的次数 = cmd_get / uptim
缓存命中率 = get_hits/cmd_get * 100%
cmd_get = get_misses + get_hits

二、stats items 显示各个slab中item的数目和最老item的年龄(最后一次访问距离如今的秒数)

相关文章
相关标签/搜索