例如,使用蚊子或hivemq Brokers发布计划/延迟消息的最佳做法?
用例是:告诉订户在15分钟内执行一些维护。
最好,然后通过发布消息"立即执行维护"来解决用例,并标记"从现在开始交付不到15分钟"的消息。
,虽然我不建议在任何情况下以高吞吐量的方式进行此操作,但至少使用Hivemq,您可以做以下操作:
- 实施一个OnPublishReceivedCallback。
- 安排一个可运行的可运行,该运行可将PublishService用于某种共享的计划ExecutorService。可运行的可通过PublishService 重新发布发布
- OnPublishReceivedCallback需要通过抛出OnPublishReceivedException(使用false作为构造函数参数,以免断开发布客户端)来丢弃原始发布。
no,立即为所有与主题订阅的连接客户端交付消息,并在重新连接时,已与持续订阅的断开客户端。
如果您想执行延迟消息,则必须在发布给经纪人之前实现自己的商店和转发机制。