Rebus:检查消息是否已经处于延迟状态的总线上
Rebus: Check if a message is already on the bus in a deferred state
我想弄清楚 rebus 是否支持查询队列。
我想查看队列,以查明消息是否已处于延迟状态的队列中。
原因是我们正在做一个相当昂贵的操作,我们希望每天执行一次,并且我们可能有多个服务实例,所以我们要确保我们在总线上只有这种类型的消息。
rebus 是否可行,或者我应该为此使用 azure 服务总线 api?
Rebus 不可能:(
对我来说,这听起来更像是您想使用某种调度程序,例如比如 Quartz .NET,或者您自己编写的代码。
查询 Azure 服务总线队列对我来说听起来不是个好主意,因为它有点倒退,考虑到听起来您只是想每天执行一些任务。
这会突然将您束缚于 ASB 传输及其怪癖,同时也将您束缚于 Rebus 的延迟消息是使用 ASB 的延迟可见性功能实现的事实,从而使您的代码的可移植性降低。
最后,我担心您会 运行 陷入并发问题,因为要避免围绕谁将延迟消息放入队列的竞争条件并非易事。
如果我是你,我会自己编写一个简单的调度程序,然后让它根据需要定期发送 Rebus 消息。
我想弄清楚 rebus 是否支持查询队列。 我想查看队列,以查明消息是否已处于延迟状态的队列中。 原因是我们正在做一个相当昂贵的操作,我们希望每天执行一次,并且我们可能有多个服务实例,所以我们要确保我们在总线上只有这种类型的消息。
rebus 是否可行,或者我应该为此使用 azure 服务总线 api?
Rebus 不可能:(
对我来说,这听起来更像是您想使用某种调度程序,例如比如 Quartz .NET,或者您自己编写的代码。
查询 Azure 服务总线队列对我来说听起来不是个好主意,因为它有点倒退,考虑到听起来您只是想每天执行一些任务。
这会突然将您束缚于 ASB 传输及其怪癖,同时也将您束缚于 Rebus 的延迟消息是使用 ASB 的延迟可见性功能实现的事实,从而使您的代码的可移植性降低。
最后,我担心您会 运行 陷入并发问题,因为要避免围绕谁将延迟消息放入队列的竞争条件并非易事。
如果我是你,我会自己编写一个简单的调度程序,然后让它根据需要定期发送 Rebus 消息。