SOA - Enterprise Service Bus

Descrizione

Il Enterprise Service Bus (ESB) è un'architettura software che collega tutti i servizi insieme su un'infrastruttura simile a un bus. Agisce come centro di comunicazione nella SOA consentendo il collegamento di più sistemi, applicazioni e dati e collega più sistemi senza interruzioni.

Nozioni di base di ESB

L'immagine sopra mostra la comunicazione tra applicazioni software in un'architettura orientata ai servizi tramite ESB. Il bus è un sistema di comunicazione che trasferisce i dati tra computer e interconnette le unità disco rigido, CD ROM, adattatori grafici e altri chip.

ESB come gestore delle transazioni

Come mostrato nella figura sopra, l'ESB può sincronizzarsi con le transazioni per comunicare con più servizi. Invece di notificare alle applicazioni Web di coordinarsi con la transazione, l'ESB può sincronizzarsi con la transazione quando più applicazioni distribuite vengono coinvolte in una transazione.

ESB come Security Manager

I meccanismi di autenticazione e autorizzazione sono parti molto importanti del controllo di sicurezza che sono incorporati in ESB. L'ESB fornisce questi meccanismi di sicurezza per l'interconnessione tra le applicazioni web.

ESB come proxy del servizio

La SOA utilizza un proxy che interpreta le chiamate di servizio tra due diversi protocolli di servizio client. Ad esempio, si consideri che è necessario accedere a un servizio accessibile solo tramite RMI (Remote Method Invocation) di Java e che è possibile accedere a questo servizio utilizzando l'interfaccia del servizio web (SOAP). Per risolvere questo problema, è possibile utilizzare il proxy del servizio che accetta le chiamate SOAP e renderle in base al servizio Java RMI.

ESB come Gateway to the World

ESB utilizza il gateway (funge da ingresso a un'altra rete) attraverso il quale può connettersi ai diversi servizi in esecuzione nelle altre reti. Il gateway gestisce la comunicazione dati che viene instradata internamente o esternamente dalla rete. Se l'utente desidera accedere al servizio di una rete esterna, passa il pacchetto di dati al gateway, che quindi si connette alla destinazione del servizio richiesta.