2010-07-31 111 views
1

我有一个逻辑发布,基本上是一堆MT服务器,他们都访问数据库订阅存储。这些MT通常会升级1/2旋转,安装新的MT版本,将它们重新在线,然后重复其他一半。NServiceBus:如何使用数据库订阅存储配置订户

我很困惑用户如何订阅这样的出版物。在我看到的所有示例中,订阅者需要在配置中指定发布者的InputQueue,以便接收订阅请求。但是,在这种情况下我会指定什么InputQueue?如果我的某些发行商MT发生故障,我不希望订阅失败。我只需通过向DB订阅存储添加记录来手动订阅?

回答

0

发布者通常会因为处理客户端的某些命令而发布,因此您通常使用分发服务器来扩展它们以及使用数据库订阅存储。订户是另一种客户,因此您可以将它们配置为指向分销商。

+0

我明白了,所以您可以将发行商放在发行商节点的前面,只是为了接受传入的订阅请求。说得通!但是,鉴于我的情况,我不喜欢这种对待发布商的想法。基本上,我不喜欢NServiceBus的典型行为,其中订阅者每次启动时都会向发布者发送一次幂等“订阅我”消息。我宁愿有一个安装脚本来部署订阅者工作节点,另外还有一个用于安装分发者并注册订阅(通过向DB添加记录)。这会工作吗? – skb 2010-07-31 20:51:29

+0

当然 - 你可以做到这一点。只需在初始化代码中的.UnicastBus()后添加.DoNotAutoSubscribe()。 – 2010-08-01 05:40:23