发布/订阅 pubsub

  • 发送者 publish test1 hello
  • 订阅者 subscribe test1
  • 场景:聊天室,启动多个 redis 去接收订阅消息
    • redis1:将消息实时推送给用户
    • redis2:存入 zset,用来取某个时间窗口的历史消息、
    • redis3:启一个 service ,将最新消息推给 kafka,然后异步存入db

事务

通过multi绑定多个命令一起执行,无论谁先开启事务,exec命令先到达的client,事务先被执行

  • 可以 watch 某个 key,如果发生更改,事务不执行

布隆过滤器

RedisBloom模块

  • 用小空间解决大量数据匹配,避免缓存穿透
  • 有一定的误判率
  • 只能增加,不能删除,如果你的业务删除了数据库中的某条数据,无法在布隆过滤器中删除这个key

解决方式
你可以使用布谷鸟过滤器等其他支持删除操作的过滤器,或者缓存一个空 key(随机过期时间)

https://juejin.cn/post/6844903861749055502

布隆过滤器升级版

  • Counting Bloom Filter
  • 布谷鸟过滤器