Un Service Registry è una applicazione software, raggiungibile sulla rete Internet o Intranet, che elenca sotto forma di catalogo i Web Services disponibili, descrivendone le caratteristiche e le modalità di accesso.
Anche detto UDDI Registry, garantisce una più semplice interoperabilità tra i sistemi e facilita la SOA Governance.
UDDI (Universal Description Discovery and Integration) è un protocollo standard che consente la descrizione dei servizi, la loro localizzazione e le specifiche delle loro interfacce.
Le specifiche UDDI, arrivate alla versione 3.0, si fondano su un insieme di standard consolidati tra i quali HTTP, XML, XSD, SOAP e WSDL.
Le specifiche UDDI, arrivate alla versione 3.0, si fondano su un insieme di standard consolidati tra i quali HTTP, XML, XSD, SOAP e WSDL.
Il Service Registry viene utilizzato da:
- Applicazioni Provider / Server per pubblicare le informazioni relative ai servizi che espongono,
- Applicazioni Consumer / Requester / Client per ricercare quali sono i servizi disponibili e le relative modalità di invocazione.
Tipico paradigma Publish, Discover, Invoke |
In un contesto architetturale SOA, il Service Registry è un elemento accessorio importante ma non fondamentale, infatti Provider e Consumer possono condividere le specifiche di integrazione anche in modo autonomo senza passare per il registry.
In altre parole, chi gestisce il sistema Provider può fornire il WSDL e la documentazione dei servizi direttamente ai responsabili dei sistemi Consumer che devono predisporre il software per le invocazioni.
Tuttavia la possibilità di far ricercare i servizi ai Client (Service Discovery) in modo autonomo, può risultare molto utile nel caso i Server decidano di far utilizzare dinamicamente le proprie funzionalità, consentendo a qualsiasi Client la ricerca autonoma dei servizi ed un interfacciamento più veloce e semplice agli stessi.
Un Service Registry tipicamente prevede:
Esistono Service Registry di mercato oppure Open Source tra i quali il più conosciuto ed utilizzato è sicuramente Apache jUDDI.
- una struttura dati in grado di memorizzare
- White Pages, informazioni riguardo ai provider che espongono ciascun servizio,
- Yellow Pages, descrizioni e categorizzazioni arbitrarie dei servizi chiamate tassonomie,
- Green Pages, informazioni tecniche per l'accesso ai servizi (wsdl, url);
- un set di API (Application Protocol Interface) per consentire la pubblicazione e la consultazione delle informazioni da parte delle applicazioni esterne;
- una web console di configurazione accessibile un amministratore/operatore che, in base alle permission che ha, può visualizzare, inserire, modificare e cancellare le informazioni.
Esistono Service Registry di mercato oppure Open Source tra i quali il più conosciuto ed utilizzato è sicuramente Apache jUDDI.
Articoli Correlati