是否可以同步订阅 Redis 消息通道?

Posted

技术标签:

【中文标题】是否可以同步订阅 Redis 消息通道?【英文标题】:Is it possible to subscribe a Redis message channel synchronously? 【发布时间】:2021-12-05 03:44:06 【问题描述】:

当我向 Redis 消息通道注册回调(=订阅)时,我的回调将被异步调用,这可能会出现并发问题,因为同一个回调被多次调用并且都共享相同的数据集。

有没有办法告诉Redis每次只调用一次同一个回调(=只在当前回调后调用next),还是我需要自己创建一个任务队列?

【问题讨论】:

【参考方案1】:

是的,你需要自己创建一个任务队列,Redis 不支持阻塞回调。

【讨论】:

以上是关于是否可以同步订阅 Redis 消息通道?的主要内容,如果未能解决你的问题,请参考以下文章

Redis 快速入门 -- Redis 发布订阅(12)

六. Redis发布订阅机制

如何使用不同的接收器创建多个通道? Spring Redis 发布/订阅

nodeJS 中的发布/订阅实现

Redis 发布订阅模型

sh Reposync - 比mrepo更好的工具。使用此选项可以同步RHEL系统订阅的所有通道,并将它们转换为本地公开的y