从nservicebus输入队列轮询

时间:2011-03-08 17:21:46

标签: nservicebus

我刚刚开始编写pub / sub,我这样做的方式是我将拥有一个每x小时运行一次的控制台应用程序,并将处理后的列表作为队列消息(每条消息1个项目)。现在,在酒吧方面,我想听取输入队列,一旦消息到达,我想发布。

我知道我需要在配置文件中设置输入队列名称和轮询间隔,但是如何使pub实际上保持从输入队列轮询。

感谢。

2 个答案:

答案 0 :(得分:1)

查看有关scheduling recurring tasks in NSB的这篇文章。我认为你可以使用这种技术,而不需要2个独立的过程。

答案 1 :(得分:0)

您需要做的就是创建一个实现IHandleMessages<YourMessageTypeHere>的类,并在初始化代码中使用

IBus bus = Configure.With()
                    ...
                    .UnicastBus()
                        .LoadMessageHandlers()
                    .CreateBus()
                    .Start();

LoadMessageHandlers()将扫描当前程序集以查找IHandleMessages个实现。每当消息到达时,将调用该处理程序。

(免责声明:这适用于NSB 2.1;我还没有使用过2.5。)

相关问题