我们在Azure SB中有许多主题,并通过从暂存到生产的VIP交换不断更新我们的环境。
当一个实例在暂存中运行时,我们不希望订阅者读取和删除用于将事件发送到在生产槽中运行的实例的消息。
我提出的解决方案是创建名称中包含RoleEnvironment.SubscriptionId的订阅。然后在RoleEntryPoint.OnStop()期间删除它们以避免未使用的订阅。
有没有更优雅的解决方案,我错过了一些明显的东西吗?
答案 0 :(得分:0)
一种方法是使应用程序理解配置设置。然后可以在暂存/生产环境之间进行更改,并且可以使用相同的配置值来启用/禁用生产中不需要的内容。对于Service Bus,您可以创建Staging和Production命名空间,然后将url放入config中。