我有以下架构:1 个发布者发布消息的主题和 3 个订阅。由于“1=1”规则,所有消息都在 3 个订阅中发送。 创建 3 个订阅是为了提供发布到 3 个不同应用程序的消息。 我有一个发布者的 SAS key ,具有该主题的“写入”权限。 我现在需要为 3 个应用程序创建 3 个具有“监听”权限的 SAS key ,但我发现我无法将 key 与订阅关联,只能与主题或命名空间级别关联。 我正在寻找一种方法来避免应用程序 #1 监听不专用于它的订阅。 可以这样做吗?
最佳答案
据我所知,实现这一目标的唯一方法是使用三个单独的“监听器”主题以及 Listen 和 Send SAS 键。
为了将其与发布者应用程序分离,您可以保留“发布”主题及其发送 SAS key ,并创建监听订阅和 SAS key ,并编写一个小的第二个“广播者”应用程序,该应用程序仅读取“发布”主题并将消息分发到三个“监听器”主题。
这样,只有您知道主“发布”主题的所有 4 个发送 SAS key 和监听 SAS key ,并且您可以独立分发其他三个监听 SAS key 。
我确信您可能考虑过这一点,但觉得一定有更简单的方法! :-)
我快速浏览了事件中心和中继,但中继似乎不合适,事件中心可能提供该功能,但我相信这并不是它们真正的用途。我认为它们也花费了很多钱。
关于订阅的 Azure ServiceBus SAS key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47152952/