9

私はUDDIとWs-Discoveryの違いを知っています(サービスとブロードキャストを検索する場所をよく知っています)。しかし、私の質問は次のとおりです。WCF で Web サービスを検出する最も簡単な方法は何ですか? 最も簡単に言えば、WCF に既に実装されていて、今すぐ使用できるものを意味します。UDDI または Ws-Discovery 用の WCF の組み込み実装は見たことがありません。

WCF でこれら 2 つのプロトコルについて共有できるリンクや経験はありますか?

アップデート

現在、.NET 4.0 での WS-discovery を待つか、WCF が提供する Peer to Peer バインディングを使用して独自の Discovery バインディングを作成するという 3 つの解決策について考えています。このようにして、リクエストをブロードキャストできます。または、eed3si9n のリンクによって提供される実装を使用します。

あとで実装を簡単に変更するためにゲートウェイインターフェースをやろうと思います。

4

3 に答える 3

3

.NET 4.0 には WS-Discovery が含まれます。.NET 4.0 でのメッセージングの機能強化: (ディスカバリー パート I) WCF 4.0 での WS-Discovery の使用 を参照してください。それまでの間、Claudio Masieri が実装を提供してくれました。WCF の WS-Discovery を参照してください。

UDDI と同様の方法で行われるカスタム検出の実装もあります。Windows Communication Service Discoveryを参照してください。

ファンキーな Wcf サービスを使用しているクライアントが 200 あるとします。それらはすべて、conf ファイルに次のようなセクションがあります。

<client>
   <endpoint configurationName="default"
               address="http://localhost/servicemodelsamples/service.svc"
               binding="wsHttpBinding"
               bindingConfiguration="Binding1"
              contract="IDataContractCalculator" />
 </client>
 <bindings>
   <wsHttpBinding>
      <binding configurationName="Binding1" />
   </wsHttpBinding>
</bindings>

ここで、既存のエンドポイント (サーバー側) を、セキュリティ上の理由から SSL を使用する新しいエンドポイントに変更することにしました。クライアントをどのように更新しますか? 退屈になる可能性があることがすぐにわかります。したがって、ここで詳しく説明したいアイデアは、UDDI と同様の検出サービスを実装し、メタデータ リゾルバーを使用してサービスから構成を取得し、クライアントがサービスと対話できるようにするプロキシを動的に作成することです。

この人はあなたと同じような懸念を持っており、有効な解決策を持っているようです。

于 2009-03-28T05:17:17.577 に答える
2

UDDIは、利用可能なサービスに関する情報を格納するための中央レジストリを提供します。それは消費者が彼らのニーズを満たすサービスを見つけることができるカタログを提供します。この電話帳のような情報のディレクトリにより、消費者は名前、住所、契約、カテゴリ、またはその他のデータでサービスを見つけることができます。UDDIは、WebサービスのDNSと考えることができます。

一方、WS-Discoveryは、ネットワークから出入りするサービスを検出するためのプロトコルを提供します。サービスがネットワークに参加すると、Helloメッセージをブロードキャストして、サービスが到着したことをピアに通知します。同様に、サービスがネットワークから切断されると、サービスはByeメッセージをマルチキャストします。WS-Discoveryは、UDDIのように、利用可能なすべてのサービスに関する情報をホストするために単一のノードに依存しません。むしろ、各ノードは、利用可能なサービスに関する情報をアドホックな方法で転送します。これにより、サービスの検出に必要なネットワークインフラストラクチャの量が減り、ブートストラップが容易になります。

引用元:http ://travisspencer.com/blog/2007/09/post.html

プロパティの適切なリストは次のとおりです。http: //laflour.spaces.live.com/Blog/cns!7575E2FFC19135B4!728.entry

于 2009-03-16T20:39:49.530 に答える