当前位置:网站首页 > 数据科学与大数据 > 正文

NoSQL数据库(四)-memcached——介绍-分布式内存对象缓存系统、安装、api之set设置、add新增、replace替换、append追加

NoSQL数据库(四)-memcached——介绍-分布式内存对象缓存系统、安装、api之set设置、add新增、replace替换、append追加

第三章 memcached

介绍

Memcached是一个自由开源的,高性能,分布式内存对象缓存系统。

Memcached是一种基于内存的key-value存储,用来存储小块的任意数据(字符串、对象)。这些数据可以是数据库调用、API调用或者是页面渲染的结果。

本质上,它是一个简洁的key-value存储系统。

redis已经包含了memcached的功能,而且更丰富,所有只需了解即可。

安装

brew install memcached 

API

  1. set

Memcached set 命令用于将 value(数据值) 存储在指定的 key(键) 中。

如果set的key已经存在,该命令可以更新该key所对应的原来的数据,也就是实现更新的作用。

set key flags exptime bytes [noreply] value 

参数说明如下:

  • key: 键值 key-value 结构中的 key,用于查找缓存值。
  • flags:可以包括键值对的整型参数,客户机使用它存储关于键值对的额外信息 。
  • exptime:在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)
  • bytes:在缓存中存储的字节数
  • noreply(可选): 该参数告知服务器不需要返回数据
  • value:存储的值(始终位于第二行)(可直接理解为key-value结构中的value)
set runoob 0 900 9 memcached STORED get runoob VALUE runoob 0 9 memcached 

如果数据添加成功,则输出:

STORED 
  1. add

Memcached add 命令用于将 value(数据值) 存储在指定的 key(键) 中。

如果 add 的 key 已经存在,则不会更新数据(过期的 key 会更新),之前的值将仍然保持相同,并且您将获得响应 NOT_STORED。(说明只能存新值,没有修改功能)

add key flags exptime bytes [noreply] value 

参数说明如下:

  • key: 键值 key-value 结构中的 key,用于查找缓存值。
  • flags:可以包括键值对的整型参数,客户机使用它存储关于键值对的额外信息 。
  • exptime:在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)
  • bytes:在缓存中存储的字节数
  • noreply(可选): 该参数告知服务器不需要返回数据
  • value:存储的值(始终位于第二行)(可直接理解为key-value结构中的value)
add new_key 0 900 10 data_value STORED get new_key VALUE new_key 0 10 data_value END 

如果数据添加成功,则输出:

STORED 
  1. replace

Memcached replace 命令用于替换已存在的 key(键)value(数据值)

如果 key 不存在,则替换失败,并且您将获得响应 NOT_STORED

replace key flags exptime bytes [noreply] value 

参数说明如下:

  • key: 键值 key-value 结构中的 key,用于查找缓存值。
  • flags:可以包括键值对的整型参数,客户机使用它存储关于键值对的额外信息 。
  • exptime:在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)
  • bytes:在缓存中存储的字节数
  • noreply(可选): 该参数告知服务器不需要返回数据
  • value:存储的值(始终位于第二行)(可直接理解为key-value结构中的value)
add mykey 0 900 10 data_value STORED get mykey VALUE mykey 0 10 data_value END replace mykey 0 900 16 some_other_value get mykey VALUE mykey 0 16 some_other_value END 

如果数据添加成功,则输出:

STORED 
  1. append

Memcached append 命令用于向已存在 key(键)value(数据值) 后面追加数据 。

append key flags exptime bytes [noreply] value 

参数说明如下:

  • key: 键值 key-value 结构中的 key,用于查找缓存值。
  • flags:可以包括键值对的整型参数,客户机使用它存储关于键值对的额外信息 。
  • exptime:在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)
  • bytes:在缓存中存储的字节数
  • noreply(可选): 该参数告知服务器不需要返回数据
  • value:存储的值(始终位于第二行)(可直接理解为key-value结构中的value)
set runoob 0 900 9 memcached STORED get runoob VALUE runoob 0 9 memcached END append runoob 0 900 5 redis STORED get runoob VALUE runoob 0 14 memcachedredis END 

如果数据添加成功,则输出:

STORED 
  1. prepend

Memcached prepend 命令用于向已存在 key(键)value(数据值) 前面追加数据 。

prepend key flags exptime bytes [noreply] value 

参数说明如下:

  • key: 键值 key-value 结构中的 key,用于查找缓存值。
  • flags:可以包括键值对的整型参数,客户机使用它存储关于键值对的额外信息 。
  • exptime:在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)
  • bytes:在缓存中存储的字节数
  • noreply(可选): 该参数告知服务器不需要返回数据
  • value:存储的值(始终位于第二行)(可直接理解为key-value结构中的value)
set runoob 0 900 9 memcached STORED get runoob VALUE runoob 0 9 memcached END prepend runoob 0 900 5 redis STORED get runoob VALUE runoob 0 14 redismemcached END 

如果数据添加成功,则输出:

STORED 

总结

第三章 memcached
  • 介绍
    • 只有key-value一种数据类型,
    • 已经被redis超越
  • api
    • set 赋值,新旧
    • add 只能赋新值
    • replace 只能改旧值
    • append 追加 preppend 向前追加
到此这篇NoSQL数据库(四)-memcached——介绍-分布式内存对象缓存系统、安装、api之set设置、add新增、replace替换、append追加的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • NoSQL数据库(五)01-mongoDB入门——介绍与应用场景、安装与可视化工具 & 使用node-mongodb-native进行增删改查2024-11-27 19:36:05
  • NoSQL数据库(五)022-Egg+Redis+MongoDb实现登录流程——业务流程梳理 & 安装依赖与页面编写2024-11-27 19:36:05
  • js之对象分类、数据类型分类和存储位置、函数 function介绍、变量的作用域2024-11-27 19:36:05
  • vue3中,方法之对象深拷贝、判断对象的数据类型2024-11-27 19:36:05
  • vue3进阶(四)——export function导出定义数据和接口数据 &封装el-select组件 & 获取sessionStorage中的基准地址apiUrl & watch和toRefs写法2024-11-27 19:36:05
  • NoSQL数据库(三)05-Redis进阶与实战——总结之事务-错误处理和watch、过期时间、sort排序、by排序 & noedjs操作redis数据库2024-11-27 19:36:05
  • NoSQL数据库(三)04-Redis进阶与实战——nodejs操作redis数据库之ioredis更新属于node_redis改良版 & ioredis的可视化工具安装、基本语法、管道与事务2024-11-27 19:36:05
  • NoSQL数据库(三)03-Redis进阶与实战——EXPIRE实现服务器缓存数据 & sort实现排序之对列表类型、有序集合和非数字类型进行排序 & Redis的底层通信协议对管道提供支持2024-11-27 19:36:05
  • NoSQL数据库(三)02-Redis进阶与实战——EXPIRE命令设置过期时间-实现定期检测删除过期数据 & EXPIRE实现和优化访问服务器频率限制2024-11-27 19:36:05
  • NoSQL数据库(三)01-Redis进阶与实战——redis事务命令与错误处理、事务中的watch命令2024-11-27 19:36:05
  • 全屏图片