2011-06-13 4 views
1

중간에 배포자와 함께 작업하는 PubSub 샘플이 있습니다.이 모든 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 MyPublisherInputQ[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

+0

두 대의 컴퓨터를 모두 제어 할 수 있으므로 컴퓨터에 dns 캐시가 플러시되었습니다. – Rohith