NATS JetStream 可以在不同的 NATS 服务器上部分复制流吗?
我的服务器 A 带有 NATS Jet Stream。我希望在服务器 B 和服务器 C(NATS 流)上复制 NATS 流的某些部分,并且互斥。
I have Server A with NATS Jet Stream. I want some part of NATS Streams replicated on Server B and Server C (NATS Streams) mutually exclusive.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
就 Stream 的内置复制而言,您不能:所有消息都在所有 nats-server 中复制(根据副本数量)。但是您可以使用标签来选择使用哪个集群(或集群中的哪些服务器)。您还可以从其他流(和主题)镜像流和源流。
我要补充的是,自 nats-server 2.8 版本以来,您还可以通过使用主题名称映射的分区功能将一个流有效地拆分为多个流(如分区)。 (https://docs.nats.io/nats-concepts /subject_mapping#确定性-主题-令牌-分区)
As far as the Stream's built-in replication goes you can not: all the messages are replicated in all the nats-servers (according to the number of replicas). But you can use tags to select which cluster (or which servers in a cluster) are used. You can also mirror streams and source streams from other streams (and subjects).
I should add that you can also effectively split a stream in multiple streams (like partitions) by using the partition function of subject name mapping since nats-server version 2.8. (https://docs.nats.io/nats-concepts/subject_mapping#deterministic-subject-token-partitioning)