2010-07-31 105 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