memcached 使用笔记
来源:互联网 发布:数控车用什么软件编程 编辑:程序博客网 时间:2024/06/02 03:33
memcached命令介绍
memcached作为高速运行的分布式缓存服务器,具有以下的特点。
- 协议简单
- 基于libevent的事件处理
- 内置内存存储方式
- memcached不互相通信的分布式
1.set命令
set key flags exptime bytes [noreply] value
key 表示缓存的索引,必须唯一,否则会覆盖
flags 提供额外的存储信息地方
exptime 是过期时间,如果是0,表示永远生效
bytes 是value的字节长度,一定要设置正确的长度,否则在命令行模式中,会提示错误.
[noreplay] 表示服务端必须回复信息
value 是key对应的值,在命令行中,必须放在第二行
以上就是set命令的使用方法.
2.add命令
add key flags exptime bytes [noreply]value
add与set方便不同的是,如果add的key已经在memcache中存在,则不提示not_stored,如果add的key不在memcache中,则将其添加到memcache中.
add,类似于增量写入, 这个操作会重置key的生命周期
3.replace命令
replace key flags exptime bytes [noreply]value
参数与set一致,差异的地方是,如果key存在于memcache中,则替换这个key,并返回stored,如果key不存在域memcache中,则返回not_stored.
这个操作会重置key的生命周期
4.append命令
append key flags exptime bytes [noreply]value
用户向key的value后边添加数据,这个key必须存在于memcache中,否则返回not_stored.
如果key原来的值是”hi”, 追加的值是”memcache”, 那么这个key在追加数据之后变成了”himemcache”.
5.prepend命令
prepend key flags exptime bytes [noreply]value
向key的前边追加数据,与append用法一致,只是添加的位置不一样.
6.cas命令
cas key flags exptime bytes unique_cas_token [noreply]value
与上边的命令相比,唯一不同的是最后多了一个参数:unique_cas_token
这个参数是gets命令的返回结果中,最后一个字段值,
cas是一个比较命令,下边是cas的返回状态码解析:
- STORED:保存成功后输出。
- ERROR:保存出错或语法错误。
- EXISTS:在最后一次取值后另外一个用户也在更新该数据。
- NOT_FOUND:Memcached 服务上不存在该键值。
当key值被修改后,gets返回的令牌会将会发生变化,当你使用gets命令获取了某个key的令牌环之后,然后你把这个值传入到cas命令的unique_cas_token参数中,cas会去比较你传入的这个令牌环是不是现在key的令牌环,如果没有人再去修改key值,那么这个key的令牌环就不会发生变化,则cas就会修改key的值,如果有另一个人在你使用cas命令之前,修改了key的值,那么key的令牌环就已经变化了,那么你再去使用之前你获取到的令牌环当做cas的参数去修改key的值,则会提示EXISTS,表示你的令牌环已经过去了,key的值将不会被修改.
7.get命令
get keyget key1 key2 key3
上边是获取一个key和获取多个key的命令.
返回信息如下:
get world#结果:VALUE world 0 5valueEND
8.gets命令
gets keygets key1 key2 key3
与get方法使用起来很想,唯一不同的是gets比get多返回一个参数,即令牌环
返回值如下:
gets world#返回值:VALUE world 0 5 11valueEND
上边的11 便是你获取到的world的令牌环,一旦world被修改,令牌环就发生变化.
9.delete命令
delete key [noreply]
删除key的信息
10.incr/decr命令
这两个命令,就是对key键的值进行加减
incr key increment_valuedecr key decrement_value
key的值必须是numeric,否则不能进行这个操作
上边的命令,就是在key原来只的基础上加上或减去increment_value
11.flush_all命令
flush_all [time] [noreply]
用户操作key->value值信息,time是个延时值,以秒为单位.
12.统计相关命令
- stats- stats items- stats slabs- stats sizes
- stats 命令用于返回统计信息例如 PID(进程号)、版本号、连接数等。
- 命令用于显示各个 slab 中 item 的数目和存储时长(最后一次访问距离现在的秒数)。
- 命令用于显示各个slab的信息,包括chunk的大小、数目、使用情况等。
- stats sizes 命令用于显示所有item的大小和个数
- MemCached的使用笔记
- memcached使用笔记
- memcached 使用笔记
- Memcached笔记——(三)Memcached使用总结
- Memcached笔记——(三)Memcached使用总结
- Memcached笔记——(三)Memcached使用总结
- Memcached笔记——(三)Memcached使用总结
- Memcached笔记——(三)Memcached使用总结
- memcached笔记
- Memcached 笔记
- memcached 笔记
- Memcached笔记
- Memcached笔记
- memcached 笔记
- Memcached使用
- memcached 使用
- 使用memcached
- memcached使用
- RandomAccessFile()的seek()方法
- oracle连接字符串
- adfaasdfdf
- 并发模型 精华一页纸
- MySQL数据库(入门)(三)
- memcached 使用笔记
- Java 泛型小记
- unit13 练习题
- 原子性操作(atomic operation)
- ThinkPHP如何引入扩展类?
- Android中ImageView控件ScaleType属性使用小结
- 流网络的切割
- ZOJ3767 Elevator
- 查看linux系统常用的命令,Linux查看系统配置常用命令