0
我有一个调度程序每分钟向队列发送一些带有相同ID的'signal'消息。在5%的情况下,消息处理程序可以在5秒到15分钟的时间范围内消费消息。如何在基于Azure ServiceBus的解决方案中实现幂等消息处理程序?
在这种情况下,我如何实现幂等消息处理,以便从调度程序发送的第二条消息将被忽略?
我试着采用消息重复检测,但是这种方法并不适用,因为它仅使用消息发生时间戳(是否正确的假设?),甚至如果我们在队列中有相同ID的消息甚至可能被锁定以进行处理) - 重复检测时间窗口关闭后将出现新消息。
我也在考虑滑动间隔,以便消息处理程序在处理它之后重新计划消息本身。但是我发现其他一些问题使得这个解决方案不那么容易。