目前,我们有两个系统正在直接通信。
服务A连续地(但不是以周期性的方式)向服务B发送消息。该消息采用简单的键/值格式。键是整数,值是当前本地日期和时间。
服务B,为了决定是否处理请求,有这样的逻辑来检查最后一个传入请求;如果与系统时间有时间差(对于每个键),并且差异超过10分钟,那么它就开始处理请求。
既然我们已经将RabbitMQ引入到我们的解决方案中,我们也需要修改这个通信模型。我正在考虑对10分钟时间窗口使用延迟消息交换,然后重写和重置从服务A传入的重复消息的时间(重排10分钟)。
能分享你对这个提议的解决方案的想法吗?
发布于 2019-06-05 09:07:28
嗯,在阅读了这些文档之后,我确信这种逻辑应该在应用层(在我的情况下是使用者软件)中实现。
https://stackoverflow.com/questions/56450072
复制相似问题