设想:
- JMS 队列中的许多消息
- MDB 将它们传送到远程 HTTP 服务器
- 远程服务器可能已关闭
- 需要不会阻塞整个服务器的重试机制。
- 重新交付运行几天,每 1 小时一次。
我的想法是让 MDB 在新消息到达 JMS 队列时立即尝试重新传递,但将其限制为每 1 分钟 5 次。然后将消息从 JMS 队列中删除并放入数据库中。然后,另一个(@Scheduled)EJB 将每 1 小时从 DB 获取未发送的消息,并在自己的线程中发送它们。
有没有更简单的方法来做到这一点?
设想:
我的想法是让 MDB 在新消息到达 JMS 队列时立即尝试重新传递,但将其限制为每 1 分钟 5 次。然后将消息从 JMS 队列中删除并放入数据库中。然后,另一个(@Scheduled)EJB 将每 1 小时从 DB 获取未发送的消息,并在自己的线程中发送它们。
有没有更简单的方法来做到这一点?