【发布时间】:2013-11-26 12:20:16
【问题描述】:
我有一个 Mass Transit Service Bus,它正在侦听多个队列并处理消息。我想以某种方式暂停新请求的处理并等待当前请求完成,以便我可以运行一些内务任务。
我自己的一些想法:
- 我已经调查了服务总线
BeforeConsumingMessage处理程序,虽然这可以让我检查数据库中的“暂停处理”标志,但我不确定我将如何实际暂停处理! - 我们正在使用 RabbitMQ - 我可以使用它来将队列置于挂起状态吗?
- 我在这个主题上发现的太少了,以至于我想知道它是否是一种“反模式”,如果我想运行一些家政工作并相信任何部分完整的 sagas 会被挑选,我应该停止我的 Mass Transit 服务当服务总线重新启动时启动。 (不过,不要选择这个选项)。
所以我的问题是:有没有办法指示服务总线完成对当前 sagas 的处理但不再从队列中获取任何消息?
【问题讨论】:
标签: masstransit