redis - Pub/Sub 和 Redis 集群

标签 redis

在此link它说“当前的实现将简单地将所有发布消息广播到所有其他节点”,并补充说它将在未来得到改进。

对于当前的实现:如果丢失消息不重要;现在将 redis 用于 pub/sub 有意义吗?看起来一个实例最好停止广播流量。因为在旁边写;读取也应该传播到其他节点! (这样客户端就不会被通知两次。)

我错过了什么吗?

最佳答案

不,我认为您没有遗漏任何要点。 Redis Cluster 是一项正在进行的工作,其中包括规范。关于 pub/sub 的部分相当简单,可能需要改进。

在 Salvatore 的提议中,客户端订阅单个实例(而不是所有实例),因此当发布被广播到所有实例时,客户端只会收到一次通知。如果 Redis 实例宕机,则由客户端订阅集群的其中一个幸存节点(任何其他节点)。

另一种可能性是选择集群中的一个节点作为唯一的发布/订阅节点,以便客户端只能在该节点上发布和订阅。但是以这种方式支持发布/订阅服务的高可用性会更加困难。

关于redis - Pub/Sub 和 Redis 集群,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12675082/

相关文章:

php - 在 Redis 中实现 session 处理程序

Node.js & Redis/hget 同步

python - 在任务队列中实现消息优先级

redis - 我们可以在redis中存储多维数组吗

hibernate - 使用 Redisson 作为 Hibernate Level 2 缓存时,本地缓存更新是否会从所有应用程序节点中逐出

javascript - 将一系列 Node JS 缓冲区通过管道传输到 ffmpeg

spring - Redis throughs (ERR operation not permitted) 错误,即使在正确运行 1 到 2 小时后

Redis 对二级索引的支持

java - 在 Redis 中存储 Web Socket session

php - 使用redis在laravel中排队