Memcached的常见命令介绍
来源:互联网 发布:js实现word预览 编辑:程序博客网 时间:2024/06/01 03:59
Memcached的常见命令介绍
在Memcached这个开源项目的介绍中,有对常见命令的一个详细介绍。链接如下:https://github.com/memcached/memcached/wiki/Commands。
为方便说明,这里将Memcached中常见命令截图如下:
本文对Memcached中几种常见的命令进行一个简要的说明。
1)存储命令,例如:set/add/replace等等。
这些命令用来指示服务器存储一些由键值标识的数据。客户端发送一行数据,后面跟着数据区块;然后,客户端等待接收由服务器回传的命令行(指示数据存储成功与否)。
命令格式如下:
2)读取命令,例如:get/gets等
这些命令指示服务器返回与所给键值相符合的数据(一个请求中可以有一个或多个键值)。客户端发送一行命令,包括所有请求的键值;服务器每找到一项内容,都会发送回客户端议案红关于这项内容的信息,紧跟着是对应的数据区块;直到服务器以一行”END”回应命令结束。
命令格式如下:
这里要说明一下get和gets命令的区别
官方文档给予的介绍是这样说的:
An alternative get command for using with CAS. Returns a CAS identifier (a unique 64bit number) with the item. Return this value with the cas command. If the item’s CAS value has changed since you gets’ed it, it will not be stored.
简单翻译为:gets是一个使用了CAS用来替代get的命令。它会返回一个CAS标识符(是一个64bit唯一的数)。如果item的CAS值在你获取之后发生了变化,则不会存储。
前半句比较好理解,看如下的例子
可以看到此处gets比普通的get多返回一个数字,这个数字可以用作检查数据是否发生改变。当key对应的数据改变的时候,该数会发生改变,如下图所示。
gets命令官方介绍的后半句是:如果item的CAS值在你获取之后发生了变化,则不会存储。这是什么意思呢???
看如下这个例子,你就明白了
cas就是“Compare And Set”的含义,只有当最后一个参数与gets所获取的参数一样时,才能被存储,否则返回“EXISTS”。这种设计的意图是防止使用经过改变了的键值对。
在并发中,这种方法就很有用。如果一个线程对一个value进行了修改,则与此同时也正在修改的线程将会修改失败。
3)状态命令,例如:stats/stats items等
这些命令被用于查询服务器的运行状态和其它内部数据。
4)其它命令,例如:flush_all/quit等
- Memcached的常见命令介绍
- memcached常见命令
- memcached常见命令
- memcached常见命令
- memcached常见命令
- Memcached 的介绍与命令使用
- Memcached 常见的问题
- memcached介绍和基本命令
- memcached介绍与基本命令
- xargs命令的介绍和常见用法
- git常见的使用命令介绍
- Memcached的stats命令
- memcached的命令规则
- Memcached的命令详解
- Memcached的命令
- memcached的相关命令
- Memcached常用的命令
- memcached的基本命令
- A. Checking the Calendar
- Android ScrollView自动滚屏或者直接滚屏到底部
- 第二章 视觉特性和彩色电视信号
- USB 描述符详细解析,来自老外网站,比协议描述清晰
- 背包问题(可拆背包)
- Memcached的常见命令介绍
- MVC框架自己封装开启超神之路(上) 3-1配置加载类
- Android学习之路--四大组件--Service
- Spring ConcurrentReferenceHashMap简单测试
- 数据结构::线索化二叉树
- Spring MVC 跳转(1)-转发
- windows录音教程
- 30、(知识篇)SpringMVC07 Spring 自定义视图
- Hadoop之MapReduce