简介:

6379,队列要遵循先进先出的原则,是在消息的传输中保存消息的容器,消息队列管理器在将消息从它的源中继到它的目标时充当中间人,队列的主要目的是提供路由并保证消息的传递;如果发送消息时接收者不可用,消息队列会保留消息,知道可以成功的传递它。

Redis数据类型:

、hash、list、zset、set

字符串string:

key、value区分大小写,命令不区分大小写,value最大可容纳的数据长度是512M。

往key中存入一个值value

获取键key的值

值对应的value自增1,如果没有这个key值自动给你创建 并赋值1;

值对应的value自减1

  应用场景:

    Incr、decr 计数器

    Setnx、expire、del 分布式锁

    set 存储对象(不常变化的部分)

散列hash:

中存在多个map。Redis中的散列可以看成具有key和value的map容器,可以将多个key-value存储到一个key中,每个hash可以存储4294967295

个键值对。

设置值

获取值

  应用场景:

    购物车:以用户的id为key,商品的id为field 商品的数量为value

    hset、hincby 存储对象(频繁变化的部分)

无序集合set

Set可包含的最大元素数量是4294967295。

应用场景:

  • 利用交集求共同好友;
  • IP;
  • tag求交集,大于某个threshold(临界值)就可以推荐;

有序集合sortedset(zset)

      有顺序的,不能重复(此处的不能重复是索引为唯一的,数据却可以重复),和set很像,都是字符串的集合,都不允许重复的成员出现出现在一个set中,它们之间的差别在于有序集合中每个成员都会有一个分数(score)与之关联,redis正是通过分数来为集合中的成员从小到大的顺序。尽管有序集合中

应用场景:

  • 利用交集求共同好友;
  • 利用唯一性,可以统计访问网站的所有独立IP;
  • 好友推荐的时候,更具tag求交集,大于某个threshold(临界值)就可以推荐;