在 ActiveMQ 中使用消息之前,如何检查依赖服务是否正常工作

How to Check dependency service is working or not, before consume the message in ActiveMQ

  1. 在我的应用程序中,我生成了 pdf 并使用 ActiveMQ。(即应用程序永远不会等待 pdf 生成,它会把 消息进入队列后,我的消费者应用程序得到 来自队列的消息并创建 pdf,然后将其发送给客户)。
  2. 我的应用程序建立在 spring-framework

  3. 之上
  4. 我需要在我的 pdf 中盖上数字签名,如果第三方数字签名服务器出现故障,我不想让我的消费者接受 队列消息。

  5. 如果有可能在消费消息之前在消费者中添加依赖关系

此场景是将消费者端事务与企业消息传递结合使用的教科书用例。在会话中使用 SESSION_TRANSACTED 或 ActiveMQSession.INDIVIDUAL_ACKNOWLEDGE 模式。这允许您在下游系统出现故障时将消息回滚给代理。您可以在您的消费者程序中添加延迟或重试,并且仅当您知道消息已发送到其他系统时才确认该消息。

参考:http://activemq.apache.org/how-do-transactions-work.html

如果您的 reliable() 路径也出现故障,断路将无济于事。