2012-04-20 4 views
0

클라이언트에서 WCF 백업 목록을 정의하여 단일 지점의 라우팅 서비스가 네사 사리가되지 않도록 할 수 있습니까?클라이언트의 WCF 라우팅 백업 목록

동일한 연락처 (인터페이스)를 구현하는 두 가지 서비스가 있습니다. 첫 번째 서비스가 사용 가능하지 않다면 클라이언트에게 백업 서비스가 사용된다는 것을 알리고 싶습니다.

가능합니까? 아니면 클라이언트와 통신 할 라우팅 서비스 (단일 지점)를 만들어야합니까?

<client> 
     <endpoint address="http://localhost:49192/OrdinaryCustomerService.svc" 
      binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_ICustomer" 
      contract="OrdinaryCustomerServiceReference.ICustomer" name="OrdinaryCustomerService" /> 
     <endpoint address="http://localhost:49860/PremiumCustomerService.svc" 
      binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_ICustomer" 
      contract="PremiumCustomerServiceReference.ICustomer" name="PremiumCustomerService" /> 
    </client> 
    <routing> 
     <backupLists> 
      <backupList name="CustomerBackupList"> 
       <add endpointName="PremiumCustomerService"/> 
      </backupList> 
     </backupLists> 
    </routing> 

답변

0

그냥 생각하지만 난 비슷한 문제를 가지고 웹 서버에 대한 모든 요청이 다른 웹 서비스로 장애 조치 할 수 있도록 내가 클라이언트 (내 경우에는 IIS 웹 서버)에 라우팅 서비스를 만드는 방법에 대해 생각하고있다 . 우리는 또한 장애 조치를 위해 여러 개의 웹 서버를 가지고 있으므로 각각에 라우터를 배치 할 것입니다.

이상적은 아니지만 최선의 해결책은 지금까지 발견되었습니다. IIS 상자에있는 라우터가 다운 될 가능성이있는 경우 IIS도 다운되며 따라서 우리 시스템은 다른 웹 서버에 쫓겨 났을 것입니다.

우리는 중간 teir에 대한 백업과 함께 적절한 wfc 라우터가 있지만 이것을 처리하기 위해 webservice를 수동으로 변경하기 전에는.