ServiceBus类型 - 队列隔离最佳实践

时间:2014-09-17 13:45:42

标签: nservicebus rebus

让我们说服务总线实例以单向模式工作。服务总线生成两种消息:Foo和Bar。这两种消息类型都将保存在数据库中。

所以我可以看到两种方法:

  1. 有两个队列(FooQueue,BarQueue)和两个总线实例(两个进程) - 一个用于从FooQueue接收,另一个用于从BarQueue接收

  2. 拥有一个队列和一个带有两个处理程序的总线实例,用于Foo和Bar消息

  3. 我想问一下什么是最佳实践(甚至是决策树?:))来决定何时使用哪种方法。

    提前致谢

1 个答案:

答案 0 :(得分:1)

嗯....在你的情况下,它听起来非常像周围的基础设施(即数据库连接字符串,数据层API)以及问题域("将消息保存到数据库")是在两种消息类型中共享 - 它听起来并不像他们将以不同的方式处理 - 对我而言,听起来像是有一个单一的端点接收&保存邮件。

实际上,如果您知道端点只接收必须保存的消息,则可以使用实现IHandleMessages<object>的单个处理程序。