Redis是一个开源(BSD许可)的内存数据结构存储,用作数据库、缓存和消息代理。Redis提供诸如字符串、哈希、列表、集合、带范围查询的排序集合、位图、超日志、地理空间索引和流等数据结构。Redis具有内置的复制、Lua脚本、LRU逐出、事务和不同级别的磁盘持久性,并通过Redis Sentinel(哨兵)和Redis Cluster的自动分区提供高可用性。
String(字符串)
string类型的部分命令上一章已经发过了,地址链接: link.
当我们在进行一些浏览量、播放量、阅读量的操作时,可以用以下代码来实现
数值操作
incr key #value值加一,相当于i++操作
decr views #value值减一,相当于i--操作
incrby key [增长值] #自定义增长值
decrby key [减少值] #自定义减少值
字符串操作
getrange key start end #获取指定范围字符串
若是范围选择 0 — -1
,则会返回所有的字符串
若是范围选择 -1 — -1
,则会返回最后一个字符串
setrange key offset value #从第几个字符开始修改字符串的值
键值操作
setex key seconds value #创建一个值并设置它的过期时间
setnx key value #判断一个键值是否存在,如果存在创建失败,如果不存在将会创建成功
mset [key value ...] # 一次性创建多个键值
msetnx [key value ...] # 一次性创建多个键值,如果有些键值已存在将全部创建失败,是一个原子性操作
mget key [key...] #一次性获取多个键值
对象操作
set user:1 {name:gby,age:3} #设置一个user:1 对象,值为json字符来保存一个对象
在实际应用中我们也可以这样:
getset key value #先获取后创建,如果之前存在则会进行覆盖
可以用来数据更新