代码改变世界

Memcached 命令简介

  田志良  阅读(4537)  评论(3编辑  收藏  举报

一、存储命令

存储命令的格式:

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

参数说明如下:

1、add:仅当存储空间中不存在键相同的数据时才保存。

2、replace:仅当存储空间中存在键相同的数据时才保存。

3、set:无论何时都保存,即set命令不但可以添加数据,如果key已经存在,该命令还可以更新key对应的数据。

 

4、delete:删除指定键值数据。

 

二、读取命令

1、get:获取一个或多个键的值,键之间以空格隔开。

2、gets:gets命令比普通的get命令多返回了一个数字,该数字可以检查数据是否发生改变,当key对应的数据改变时,该数字也会改变

3、cas:checked and set的意思,只有当最后一个参数和gets所获取的参数匹配时才能存储,否则返回“EXISTS”。

 

三、其他命令

1、append:在现有的key后添加数据,如果key不存在,服务器响应为“NOT_STORED”。

2、prepend:与append相反,在现有的key前添加数据。

3、flush_all:使已经存在的键值数据立即失效(缺省),或在指定的时间后失效,此后执行Get命令,将不会有任何内容返回,除非重新存储同样的键值数据。 flush_all 实际上没有立即释放键值数据所占用的内存,而是在随后陆续有新的项目被储存时重用该内存空间,这是由memcached的懒惰检测和删除机制决定的。

 

参考文章:

http://www.cnblogs.com/jeffwongishandsome/archive/2011/11/06/2238265.html

http://www.cnblogs.com/tianzhiliang/articles/2513101.html

 

编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示