使用入门

  1. 获得一个符合匹配规则的键名列表

keys pattern  [? / * /[]]

 

keys mic:hobby

 

  1. 判断一个键是否存在 , EXISTS key
  2. type key 去获得这个key的数据结构类型

各种数据结构的使用

字符类型

一个字符类型的key默认存储的最大容量是512M

赋值和取值

SET key  value

GET key

递增数字
incr key

 

错误的演示

int value= get key;

value =value +1;

set key value;

key的设计

对象类型:对象id:对象属性:对象子属性

建议对key进行分类,同步在wiki统一管理

短信重发机制:sms:limit:mobile 138。。。。。 expire

 

incrby key increment  递增指定的整数

decr key   原子递减

append key value   向指定的key追加字符串

strlen  key  获得key对应的value的长度

mget  key key..  同时获得多个key的value

mset key value  key value  key value …

setnx :设置唯一键

 

列表类型

list, 可以存储一个有序的字符串列表

LPUSH/RPUSH: 从左边或者右边push数据

LPUSH/RPUSH key value value …

{17 20 19 18 16}

LPOP/RPOP : 取数据、

因为lpop从左取数据,无论从左取还是右取都是一次顺序的取,因此应用场景:可以用来做分布式消息队列

 

 

llen num  获得列表的长度

lrange key  start stop   ;查看key里面的值  索引可以是负数, -1表示最右边的第一个元素

redis使用入门

lrem key count value    :删除key中的值

redis使用入门

lset key index value  :设置key中的值

redis使用入门

 

 

散列类型

hash key value  不支持数据类型的嵌套

比较适合存储对象

person

age  18

sex   男

name mic

..

hset key field value

hget key filed

redis使用入门

 

 

hmset key filed value [filed value …]  一次性设置多个值

hmget key field field …  一次性获得多个值

redis使用入门

 

hgetall key  获得hash的所有信息,包括key和value

redis使用入门

hexists key field 判断字段是否存在。 存在返回1. 不存在返回0

redis使用入门

hincryby  :原子递增

hsetnx    :如果存在,则不操作返回0,如果不存在返回1并设置值

redis使用入门

 

hdel key field [field …] 删除一个或者多个字段

集合类型

set 跟list 不一样的点。 集合类型不能存在重复的数据。而且是无序的

sadd key member [member ...] 增加数据; 如果value已经存在,则会忽略存在的值,并且返回成功加入的元素的数量

srem key member  删除元素

smembers key 获得所有数据

redis使用入门

 

 

sdiff key key …  对多个集合执行差集运算   sdiff  mic  ff :指  mic 减去ff中相同的,得到mic中不同的值

redis使用入门

 

sunion 对多个集合执行并集操作, 同时存在在两个集合里的所有值

 

有序集合

zadd key score member  :score 指key的优先级redis使用入门

zrange key start stop [withscores] 去获得元素。 withscores是可以获得元素的分数

如果两个元素的score是相同的话,那么根据(0<9<A<Z<a<z) 方式从小到大

网站访问的前10名。

redis的事务处理

MULTI 去开启事务

EXEC 去执行事务

事务成功的:

redis使用入门

redis使用入门

事务不回滚:

事务有可能不会回滚,在执行中才能知道的问题,不会导致其他已经执行的回滚。

redis使用入门

 

布订阅

publish channel message

subscribe channel [ …]

1.发布消息队列为queue1

redis使用入门

2.在另外一台上订阅消息

redis使用入门

3.在消息队列中发布消息

redis使用入门

4.在订阅者中可以接受到消息

redis使用入门

 

 

 

 

相关文章: