Redis 零散 Tips

2 篇文章 0 订阅

匹配 key:

1. keys [pattern]

2. scan [cursor] match[pattern] count[num]

相对而言,scan 命令更为高效,异步方式不会造成主线程堵塞

 

判断 key 存在与设置过期时间

1. setnx key value:如果 key 存在则不操作, key 不存在时执行 set key value

    expire key time:设置过期时间,单位为秒

    这两个操作都是原子性的,但整体没有原子性

2. set key value [EX second] | [PX milliseconds]  [NX|XX]

    等于 setnx 与 expire 的结合,实现了整体的原子性

    NX: key 不存在时操作

    XX: key 存在时操作

 

异步队列

blpop key[key...] timeout: 阻塞直到队列有消息或超时

pub/sub: 主题订阅模式,无状态,无法保证可达

订阅者:subscribe [频道名]

发送者:publish [频道名][消息]

例:开启三个 Redis 客户端,角色均为订阅者,前两个订阅了同一个频道,第三个订阅了另一个频道

然后再开启一个 Redis 客户端,角色为发布者,向 mychannel 频道发送消息

可以看到,订阅了 mychannel 频道的两个订阅者收到了消息,而另一个订阅者没有收到消息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值