2011-06-13 72 views
1

我有PubSub示例與中間經銷商合作 - 所有這些都在我的本地機器上。現在我試圖讓分銷商進入另一臺機器並遇到麻煩。訂戶似乎正在通過分銷商向發佈商進行註冊(我在發佈商中添加了日誌聲明,告訴我訂閱者的數量並且給了我正確的價值),但訂閱者沒有得到任何發佈活動。我究竟做錯了什麼?我需要爲不同的隊列提供一些權限嗎? 我這裏還有我的配置文件:NServiceBus:PubSub與分銷商在發佈商和訂閱者不同的機器上

出版商

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <configSections> 
    <section name="MsmqTransportConfig" type="NServiceBus.Config.MsmqTransportConfig, NServiceBus.Core" /> 
    <section name="UnicastBusConfig" type="NServiceBus.Config.UnicastBusConfig, NServiceBus.Core" /> 
    </configSections> 

    <MsmqTransportConfig InputQueue="MyPublisherInputQueue" ErrorQueue="error" NumberOfWorkerThreads="1" MaxRetries="5" /> 

    <UnicastBusConfig DistributorControlAddress="" 
    DistributorDataAddress="" 
    ForwardReceivedMessagesTo=""> 
    <MessageEndpointMappings> 
     <add Messages="MyMessages" Endpoint="[email protected]" /> 
    </MessageEndpointMappings> 
    </UnicastBusConfig> 

</configuration> 

用戶

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <configSections> 
    <section name="MsmqTransportConfig" type="NServiceBus.Config.MsmqTransportConfig, NServiceBus.Core" /> 
    <section name="UnicastBusConfig" type="NServiceBus.Config.UnicastBusConfig, NServiceBus.Core" /> 
    </configSections> 

<MsmqTransportConfig 
    InputQueue="Subscriber1InputQueue_1" 
    ErrorQueue="error" 
    NumberOfWorkerThreads="1" 
    MaxRetries="5" 
    /> 

    <UnicastBusConfig DistributorControlAddress="[email protected]" DistributorDataAddress="[email protected]"> 
    <MessageEndpointMappings> 
     <add Messages="MyMessages" Endpoint="MyPublisherInputQueue" /> <!-- I've also tried this with [email protected] --> 
    </MessageEndpointMappings> 
    </UnicastBusConfig> 

</configuration> 

發行

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <appSettings> 
    <add key="NumberOfWorkerThreads" value="1"/> 

    <add key="DataInputQueue" value="distributorDataBus"/> 
    <add key="ControlInputQueue" value="distributorControlBus"/> 
    <add key="ErrorQueue" value="error"/> 
    <add key="StorageQueue" value="distributorStorage"/> 

    <add key="NameSpace" value="http://www.UdiDahan.com"/> 
    <!-- relevant for a Serialization of "interfaces" or "xml" --> 

    <add key="Serialization" value="xml"/> 
    <!-- can be either "xml", or "binary" --> 
    </appSettings> 
</configuration> 

在上述配置中,分銷商運行在名爲「rosmi」的計算機上,發行商和訂戶在「rrajagop」上運行。

回答

0

找出問題所在:問題發生是因爲計算機名稱的nslookup指向了錯誤的IP地址 - 這是因爲DHCP爲計算機分配了不同的IP地址,但dns項需要一段時間才能更新。

+0

那麼,你是如何解決這個問題的? – nano 2014-03-19 15:10:42

+0

我控制了兩臺機器,所以我在機器上做了一個dns緩存刷新。 – Rohith 2014-04-09 04:59:55