0

我想通过 Redis 共享一个具有以下要求的状态:

  1. 解耦:解耦的发布者和订阅者
  2. 单一所有权:每个状态由一个发布者设置
  3. Push:一旦状态发生变化,必须立即通知相关订阅者
  4. 拉取:一旦订阅者初始化,它应该立即拉取相关状态


如果在没有 PULL 的情况下需要PUSH ,那么 pub\sub 将是最佳的

支持所有需求的最佳设计模式是什么?

4

1 回答 1

0

一种解决方案是同时使用 pub\sub 发布(推送)状态更改和哈希来保持订阅者可以读取(拉取)的每种最新发布状态

唯一的障碍是您需要按如下方式处理竞争条件:

  • 发布者应该通知然后更新状态
  • 订阅者应该先订阅然后读取状态
于 2013-09-24T15:32:37.290 回答