Solace 是否有一些 API 调用(可能是管理性的),可以通过它确定主题或队列至少有一个“活动”订阅者?例如,调用返回该主题的活跃订阅数?
用例是确定在请求/回复场景中是否有服务器“监听”相关端点。 (显然,如果没有服务器响应,客户端发送请求是没有意义的。相反,需要采取某种形式的补救措施。)
Solace 没有可用于确定主题是否有订阅者的 API 调用。同样,也没有任何 API 调用可用于确定队列是否有任何活动的消费者。
相反,可以在客户端配置文件上启用“拒绝没有订阅匹配的发件人消息”属性。
启用该属性后,发布到消息 VPN 上没有订阅者的主题的任何保证消息都将被拒绝,并显示“无订阅匹配”错误。
但是,请注意,如果消息 VPN 上任何队列的主题订阅与保证消息要发布到的主题匹配,则消息不会因“无订阅匹配”错误而被拒绝。相反,这些消息将被假脱机到队列中。
您可以尝试执行SEMP/CLI命令:
show smrp subscriptions topic <topicName>
并查明您是否有现有客户。