Wie funktioniert die SOA Service Discovery (UDDI) in der Praxis?

8

Ich lese gerade SOA und die Service Registry / UDDI wird regelmäßig erwähnt. Es klingt nett, aber wie wird es in der Realität verwendet?

  • Soll die Registrierung einen logischen Dienst von seiner physischen Implementierung (Port, URL usw.) entkoppeln?
  • Soll das Register von einem Menschen durchsucht werden, der nach einem interessanten Dienst sucht, mit dem man spielen kann?
  • Wäre es "falsch", ein Kabel zu verdrahten? Anwendung     zu den Diensten, die es benutzt?
paul 24.09.2008, 11:59
quelle

3 Antworten

9

Ich finde es theoretisch sinnvoller als praktisch sinnvoll. Es wird selten implementiert und selten verwendet. In Wirklichkeit stellt DNS ein ausreichendes Abstraktionswerkzeug für die Lokalisierung von Ressourcen im Netzwerk bereit.

    
MattMcKnight 24.09.2008, 16:50
quelle
4

Eine Service-Registry speichert und veröffentlicht Informationen über alle verfügbaren Dienste, hauptsächlich ihre Schnittstellenbeschreibung und ihren aktuellen URI (IP, Port, was auch immer). Auf diese Weise kann die Anwendung einfach die Registrierung für den benötigten Dienst fragen und erhält die Details einer passenden Service-Implementierung und kann eine Verbindung herstellen.

UDDI ist nicht die einzige Möglichkeit, eine Registrierung für Ihre Dienste zu erhalten. Aber denken Sie daran, dass UDDI nur für Webservices gedacht ist. Es ist also nur nützlich, wenn Ihre SOA nur aus Webservices besteht.

1) Korrigieren.

2) Nein, das ist nicht wirklich für menschliche Augen gedacht. Sicher, es gibt Tools, um das Verzeichnis zu durchsuchen, aber sie dienen hauptsächlich dazu, zu sehen, ob die Registry die Dienste hat, die Sie benötigen, usw. Die tatsächliche Verwendung geschieht direkt zwischen Ihrer Anwendung / Ihrem Dienst und der Registrierung.

3) Das hängt davon ab, was Sie erreichen möchten. Wenn Sie eine SOA erstellen möchten, denken Sie, es wäre "falsch", weil dies dem losen Kopplungsparadigma von SOA widerspricht. Wenn dies Ihr einziger Dienst ist, ist die einzige Anwendung, die es verwendet und es wahrscheinlich ist, dass der Dienst seine URI nicht ändert, es gibt definitiv kein Problem bei der Hard-Verdrahtung - aber dann gibt es wahrscheinlich keine Notwendigkeit, diesen Dienst zu trennen:)

    
Fabian 24.09.2008 12:27
quelle
1

Wie wäre es mit Multicast, um den Dienst zu deaktivieren? Wie mit jgroups oder SLP? Alle Dienste werden sich gegenseitig entdecken und das, was sie brauchen, in einen Proxies injizieren. Dann Abstraktion über die tatsächliche Transport-Implementierung aufbauen. (z. B. Ruhe, Seife, rmi)

    
michael 04.05.2009 09:10
quelle

Tags und Links