【问题标题】:NATS request-reply with multitenancy多租户的 NATS 请求-回复
【发布时间】:2021-10-27 20:38:09
【问题描述】:

我使用 NATS 请求-回复很好,但我计划添加多租户帐户。 replyTo 收件箱是否需要额外配置?例如

租户 A: 收听rpc.method。此主题作为服务导出给租户 B。

租户 B: 向rpc.method 发起一个req-reply,指定一个replyChannel。通常这看起来像 _INBOX.xxxxx。

因此,当居住在租户 A 中的订阅者想要发回响应时,假设 _INBOX.xxxxx 未导出到租户 B,租户 B 中的请求者会收到它

【问题讨论】:

    标签: nats.io


    【解决方案1】:

    是的,Allow Responses 功能适用于多租户。 NATS 会将客户端(租户 B)的回复主题动态呈现给服务帐户(租户 A),作为租户 A 本地的动态主题,服务可以在一段时间内向其发布响应。

    【讨论】:

    • 谢谢@tbeets!由于评论长度的限制,我已经验证了设置并在下面的帖子中对其进行了描述。我注意到您提到的新动态_R_.>回复主题。但是,我在文档中没有找到任何对它的引用。这是要留在这里吗?这是一个重要的问题,因为必须授权回复者才能发布到该主题。
    【解决方案2】:

    谢谢@tbeets!。

    我创建了一个简单的设置来测试完整的设置。想象一下两个帐户 serverclient 以及一个名为 rpc 的导出服务。

    会发生什么:

    客户端导入rpc 服务并执行通常的req-rep。它宣传一个常规的_INBOX.xxx回复主题。

    但是,server,作为不同的帐户/租户,收到的消息的回复覆盖为_R_.yyyyserver 回复_R_.yyyclient 仍收到其对原始主题_IBOX.xxx 的回复。

    这很漂亮!

    唯一需要的改变是让服务器发布到_R_.> (--allow-pub '_R_.>')

    【讨论】:

      猜你喜欢
      • 2023-03-20
      • 1970-01-01
      • 1970-01-01
      • 2015-03-30
      • 1970-01-01
      • 2021-10-08
      • 2019-10-26
      • 2019-10-28
      • 2021-04-23
      相关资源
      最近更新 更多