Webdienst-Erkennung in WCF: Ws-Discovery oder UDDI?

9

Ich kenne die Unterscheidung zwischen UDDI und Ws-Discovery (gut bekannt Ort, um einen Dienst vs Broadcast zu suchen). Aber meine Frage ist: Was ist der einfachste Weg, einen Webservice in WCF zu entdecken? Mit einfachsten meine ich, was ist bereits in WCF implementiert und kann jetzt verwendet werden? Ich habe keine integrierte Implementierung in WCF für UDDI oder Ws-Discovery gesehen.

Haben Sie einen Link oder eine Erfahrung, die Sie in WCF über diese beiden Protokolle teilen möchten?

AKTUALISIEREN

Ich denke jetzt über drei Lösungen nach, die auf WS-Discovery unter .NET 4.0 warten, oder vielleicht meine eigene Discovery-Bindung mit der von WCF bereitgestellten Peer-to-Peer-Bindung erstellen. Auf diese Weise kann ich eine Anfrage senden. Oder verwenden Sie die Implementierung, die durch den Link von eed3si9n bereitgestellt wird.

Ich denke, dass ich eine Gateway-Schnittstelle machen werde, um die Implementierung später zu ändern.

    
Nicolas Dorier 15.03.2009, 13:35
quelle

3 Antworten

3

.NET 4.0 wird WS-Discovery haben. Siehe Messaging-Verbesserungen in .NET 4.0: (Entdeckungsteil I) WS-Discovery in WCF 4.0 verwenden . In der Zwischenzeit hat Claudio Masieri eine Implementierung zur Verfügung gestellt. Siehe WS-Discovery für WCF .

Es gibt auch eine benutzerdefinierte Discovery-Implementierung, die ähnlich wie UDDI ausgeführt wird. Siehe Windows Communication Service-Erkennung .

  

Stellen Sie sich vor, Sie verwenden 200 Clients   Ihr funky Wcf-Service. Sie würden alle   Habe in ihrer Konfig Datei einen Abschnitt wie   dieser:

%Vor%
  

Nun entscheidest du dich, das Bestehende zu ändern   Endpunkt (Serverseite) mit einem neuen   das verwendet SSL aus Sicherheitsgründen. Wie   Aktualisieren Sie Ihre Kunden? Sie können   schnell sehen, dass es werden kann   langweilig. Also die Idee, die ich detailliert machen möchte   Hier ist eine Entdeckung zu implementieren   Service ähnlich wie UDDI und   Verwenden eines Metadaten-Resolvers zum Abrufen des   Konfiguration aus dem Dienst in   um einen Proxy dynamisch zu erstellen   dem Kunden erlauben, mit ihm zu diskutieren   der Service.

Diese Person hat ähnliche Bedenken wie Sie und scheint eine funktionierende Lösung zu haben.

    
Eugene Yokota 28.03.2009, 05:17
quelle
2
  

UDDI stellt eine zentrale Registrierung zur Verfügung   Informationen über verfügbar speichern   Dienstleistungen. Es liefert einen Katalog, wo   Verbraucher können Dienste finden, die sich treffen   ihre Bedürfnisse. Dieses Telefonbuch ähnlich   Verzeichnis von Informationen erlauben   Verbraucher, um Dienstleistungen mit Namen zu finden,   Adresse, Vertrag, Kategorie oder nach   andere Daten. UDDI kann man sich vorstellen   als das DNS von Webdiensten.

     

Auf der anderen Seite, WS-Discovery   bietet ein Protokoll zu entdecken   Dienstleistungen, die kommen und gehen   aus einem Netzwerk. Wenn ein Service beitritt   das Netzwerk, informiert es seine Kollegen von   seine Ankunft durch Ausstrahlung eines Hello   Botschaft; ebenso, wenn Dienstleistungen fallen   Aus dem Netzwerk Multicasting ein Bye   Botschaft. WS-Discovery verlässt sich nicht darauf   ein einzelner Knoten zum Hosten von Informationen   über alle verfügbaren Dienste als UDDI   tut. Vielmehr wird jeder Knoten weitergeleitet   Informationen über verfügbare Dienste   auf Ad-hoc-Basis. Das reduziert sich   die Menge der Netzwerkinfrastruktur   benötigt, um Dienste zu entdecken und   erleichtert Bootstrapping.

Zitat aus: Ссылка

Hier ist eine gute Liste von Eigenschaften: Ссылка

    
boj 16.03.2009 20:39
quelle
0

jUDDI hat einen .NET-Client, den Sie verwenden können. Es vereinfacht eine Menge Dinge für die Arbeit mit UDDI.

Aus Erfahrung gibt es nur zwei oder drei funktionierende Implementierungen von WS-Discovery.

  • Apache CXF, aber nur wenn außerhalb eines Containers
  • ausgeführt wurde
  • Dieser: Ссылка , der in Jboss nicht funktioniert und nicht gepflegt wird
  • Microsoft .NET 4.0ish

UDDI können Sie von allem zugreifen. Es gibt viele Client- und Serverimplementierungen. (Nur die Version 3 Zeug ist hier aufgeführt)

  • IBM WS-Registrierung
  • Apache jUDDI
  • Microsoft UDDI v3 mit BizTalk (kostenlos mit 2008 Server)
  • HP SOA / Systinet oder wie immer es jetzt heißt
  • WSO2 hat etwas
  • ebXML hat eine Art Bridge oder Adapter

Es gibt sogar einen REST-Endpunkt für UDDI3 (jUDDI 3.2 hat es, XML- oder JSON-Antworten), was dies für viele weitere Möglichkeiten öffnet.

Außerdem sind die Daten, die mit WS-Discovery gemeinsam genutzt werden können, im Vergleich zu den praktisch unbegrenzten Daten, die Sie an UDDI anhängen können, etwas eingeschränkt.

Das sind nur meine 2 Cent.

    
spy 31.12.2013 01:53
quelle

Tags und Links