我想知道当使用 Kubernetes 启动集线器的多个实例时,Mercure 将如何处理订阅。
在这里我们可以阅读:
要订阅更新,客户端会按照服务器发送事件规范打开一个 HTTPS 连接到发布者公布的集线器订阅 URL
但是假设我们有:
- 2 个集线器
HubA
和HubB
2 个不同的 docker 容器(由 kubernetes 运行) - 2个客户
ClientA
和ClientB
ClientA
订阅了HubA
主题my-topic
ClientB
订阅HubB
了同一主题my-topic
如果ClientA
发送一个 HTTP 请求,结果会HubA
向他的所有订阅者发送一个事件,那么ClientB
将不会收到一个事件(如果我了解 Mercure 的工作原理)。
我计划按照文档中的说明(部署到 Kubernetes 集群)部署我的应用程序。
但我担心某些客户将无法接收所有事件,因为他们不会收听“正确”的集线器。
问题:
- 真的是美居处理订阅的方式吗(我了解它是如何工作的)吗?
- 在这种情况下,即使他没有连接到同一个集线器(因为 Kubernetes 可以启动多个容器),如何
ClientB
接收有关主题的所有事件?my-topic
ClientA
谢谢你。