Redis笔记

Redis特性


  1. Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
  2. Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
  3. Redis支持数据的备份,即master-slave模式的数据备份。

Redis 优势


  1. 性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
  2. 丰富的数据类型 –Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
  3. 原子 – Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行。
  4. 丰富的特性 – Redis还支持publish/subscribe, 通知, key 过期等等特性。

redis应用场景


  1. 用来做缓存(ehcache/memcached)——redis的所有数据是放在内存中的(内存数据库)
  2. 可以在某些特定应用场景下替代传统数据库——比如社交类的应用 在一些大型系统中,巧妙地实现一些特定的功能:session共享、购物车等

Redis的数据类型


type数据类型
string字符串
list列表
hash哈希
set集合
zset有序集合
string类型

1、保存

设置键值
set key value

设置键值及过期时间,以秒为单位
setex key seconds value

设置多个键值
mset key1 value1 key2 value2...

追加值
append key value

2、获取

获取:根据键获取值,如果不存在此键则返回nil
get key

根据多个键获取多个值
mget key1 key2 ...

3、键命令

查看所有键
keys *

判断键是否存在,如果存在返回1,不存在返回0
exists key1

查看键对应的value的类型
type key

删除键及对应的值
del key1 key2 ...

设置过期时间,以秒为单位
如果没有指定过期时间则一直存在,直到使用DEL移除
expire key seconds

查看有效时间,以秒为单位
ttl key
hash类型
  • hash用于存储对象,对象的结构为属性、值
  • 值的类型为string

1、增加、修改

设置单个属性
hset key field value

设置多个属性
hmset key field1 value1 field2 value2 ...

2、获取

获取指定键所有的属性
hkeys key

获取一个属性的值
hget key field

获取多个属性的值
hmget key field1 field2 ...

获取所有属性的值
hvals key

3、删除

删除整个hash键及值,使用del命令
删除属性,属性对应的值会被一起删除
hdel key field1 field2 ...
list类型
  • 列表的元素类型为string
  • 按照插入顺序排序

1、增加

在左侧插入数据
lpush key value1 value2 ...

在右侧插入数据
rpush key value1 value2 ...

在指定元素的前或后插入新元素
linsert key before或after 现有元素 新元素

2、获取

返回列表指定范围内的元素

start、stop为元素的下标索引
索引从左侧开始,第一个元素为0
索引可以是负数,表示从尾部开始计数,如-1表示最后一个元素
lrange key start stop

设置指定索引位置的元素值
索引从左侧开始,第⼀个元素为0
索引可以是负数,表示尾部开始计数,如-1表示最后一个元素
lset key index value

3、删除

删除指定元素
将列表中前count次出现的值为value的元素移除
count > 0: 从头往尾移除
count < 0: 从尾往头移除
count = 0: 移除所有
lrem key count value
set类型
  • 无序集合
  • 元素为string类型
  • 元素具有唯一性,不重复
  • 说明:对于集合没有修改操作

1、增加

添加元素
sadd key member1 member2 ...

2、获取

返回所有的元素
smembers key

3、删除

删除指定元素
srem key
zset类型
  • sorted set,有序集合
  • 元素具有唯一性,不重复
  • 每个元素都会关联一个double类型的score,表示权重,通过权重将元素从⼩到⼤排序 说明:没有修改操作

1、增加

添加
zadd key score1 member1 score2 member2 ...

2、获取

返回指定范围内的元素
start、stop为元素的下标索引
索引从左侧开始,第一个元素为0
索引可以是负数,表示从尾部开始计数,如-1表示最后一个元素
zrange key start stop

返回score值在min和max之间的成员
zrangebyscore key min max

返回成员member的score值
zscore key member

3、删除

删除指定元素
zrem key member1 member2 ...

删除权重在指定范围的元素
zremrangebyscore key min max
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值