Che cosè larchitettura orientata ai servizi?

Uno sguardo ai noccioli dellarchitettura orientata ai servizi

Larchitettura orientata ai servizi (SOA) è uno stile di progettazione software in cui i servizi sono forniti agli altri componenti dai componenti dellapplicazione, attraverso un protocollo di comunicazione su un Rete. I suoi principi sono indipendenti dai fornitori e da altre tecnologie. Nellarchitettura orientata ai servizi, una serie di servizi comunicano tra loro in due modi: attraverso il passaggio di dati o attraverso due o più servizi che coordinano unattività. Questa è solo una delle definizioni di architettura orientata ai servizi. Un articolo su Wikipedia va molto più in dettaglio.

Caratteristiche dellarchitettura orientata ai servizi

Sebbene i concetti che definiscono larchitettura orientata ai servizi variano da azienda a azienda, ci sono sei principi chiave che sovrastano lampio concetto di architettura orientata ai servizi. Questi valori fondamentali includono:

Valore aziendale

Obiettivi strategici

Interoperabilità intrinseca

Servizi condivisi

Flessibilità

Raffinamento evolutivo

Ciascuno di questi valori fondamentali può essere visto in un continuum dal vecchio formato di elaborazione distribuita allarchitettura orientata ai servizi al cloud computing (qualcosa che è spesso visto come una propaggine di architettura orientata ai servizi).

Modelli di architettura orientata ai servizi

Ci sono tre ruoli in ciascuno degli elementi costitutivi dellarchitettura orientata ai servizi: fornitore di servizi; broker di servizi, registro di servizi, archivio di servizi; e il richiedente / consumatore del servizio.

Il fornitore del servizio lavora insieme al registro dei servizi, discutendo i perché e come dei servizi offerti, come sicurezza, disponibilità, cosa addebitare e altro. Questo ruolo determina anche la categoria del servizio e leventuale necessità di accordi commerciali.

Il broker del servizio rende disponibili le informazioni sul servizio a chi lo richiede. Lambito del broker è determinato da chi lo implementa.

Il richiedente del servizio individua le voci nel registro del broker e quindi le associa al fornitore del servizio. Possono o meno essere in grado di accedere a più servizi; ciò dipende dalla capacità del richiedente del servizio.

Implementazione dellarchitettura orientata ai servizi

Quando si tratta di implementare larchitettura orientata ai servizi (SOA), esiste unampia gamma di tecnologie che può essere utilizzata, a seconda del tuo obiettivo finale e di ciò che stai cercando di ottenere.

In genere, larchitettura orientata ai servizi viene implementata con i servizi web, il che rende i “blocchi di costruzione funzionali accessibili su Internet standard protocolli. “

Un esempio di uno standard di servizio web è SOAP, che sta per Simple Object Access Protocol. In poche parole, SOAP” è una specifica del protocollo di messaggistica per lo scambio di informazioni strutturate nellimplementazione di servizi web in reti di computer. Sebbene SOAP allinizio non sia stato ben accolto, dal 2003 ha guadagnato più popolarità e sta diventando sempre più ampiamente utilizzato e accettato. Altre opzioni per limplementazione dellarchitettura orientata ai servizi includono Jini, COBRA o REST.

È importante notare che le architetture possono “funzionare indipendentemente da tecnologie specifiche”, il che significa che possono essere implementate in una varietà di modi, compresa la messaggistica, come ActiveMQ, Apache Thrift e SORCER.

Perché larchitettura orientata ai servizi è importante

Ci sono molti vantaggi nellarchitettura orientata ai servizi, specialmente in unazienda basata sui servizi Web. Descriveremo alcuni di questi vantaggi qui, in breve:

Usa Architettura orientata ai servizi per creare codice riutilizzabile: non solo questo riduce il tempo speso nel processo di sviluppo, ma non cè motivo di reinventare la ruota di codifica ogni volta che è necessario creare un nuovo servizio o processo. Larchitettura orientata ai servizi consente anche per lutilizzo di più codici ng language perché tutto passa attraverso uninterfaccia centrale.

Usa larchitettura orientata ai servizi per promuovere linterazione: con larchitettura orientata ai servizi, viene messa in atto una forma standard di comunicazione, che consente ai vari sistemi e piattaforme di funzionare indipendenti luno dallaltro. Con questa interazione, larchitettura orientata ai servizi è anche in grado di aggirare i firewall, consentendo alle “aziende di condividere servizi vitali per le operazioni.”

Utilizza larchitettura orientata ai servizi per la scalabilità: è importante essere in grado di scalare unazienda per soddisfare le esigenze del cliente, tuttavia alcune dipendenze possono ostacolare tale scalabilità. Lutilizzo dellarchitettura orientata ai servizi riduce linterazione client-servizio, il che consente una maggiore scalabilità.

Utilizza larchitettura orientata ai servizi per ridurre i costi: con larchitettura orientata ai servizi, è possibile ridurre i costi finché ” mantenendo un livello di output desiderato. ” Lutilizzo dellarchitettura orientata ai servizi consente alle aziende di limitare la quantità di analisi richiesta durante lo sviluppo di soluzioni personalizzate.

Come interagiscono architettura orientata ai servizi e cloud computing

Innanzitutto, è importante notare che Larchitettura orientata ai servizi può funzionare con o senza il cloud computing, sebbene sempre più aziende stiano spostando larchiviazione dei file nel cloud, quindi ha senso utilizzare insieme il cloud computing e larchitettura orientata ai servizi.

In poche parole, lutilizzo del cloud computing consente agli utenti di implementare facilmente e immediatamente servizi personalizzati in base ai requisiti clienti, “senza la necessità di consultare un reparto IT”.

Uno svantaggio dellutilizzo congiunto dellarchitettura orientata ai servizi e del cloud computing è che alcuni aspetti di essa non vengono valutati, come la sicurezza e la disponibilità ility. Quando si utilizza il cloud computing, gli utenti sono spesso in balia del provider.

Cè una sfida piuttosto importante che le aziende devono affrontare quando si fondono il cloud computing e larchitettura orientata ai servizi è lintegrazione dei dati e dei sistemi esistenti nel cloud soluzione. Deve esserci continuità dallinizio alla fine affinché ci sia una transizione senza soluzione di continuità. È anche importante tenere presente che non tutti gli aspetti IT possono essere esternalizzati al cloud: ci sono alcune cose che devono ancora essere fatte manualmente.

Puoi leggere ulteriori informazioni su come larchitettura orientata ai servizi e il cloud i computer lavorano insieme proprio qui.

La differenza tra architettura orientata ai servizi e SaaS

Abbiamo parlato a lungo di cosè larchitettura orientata ai servizi e di come può essere utilizzata per far progredire il tuo business. Ma cè anche SaaS (Software as a Service), che può essere utilizzato anche per far progredire la tua attività. Forse ti starai chiedendo che cosè SaaS e in che modo differisce dallarchitettura orientata ai servizi. In breve, le risorse disponibili tramite SaaS sono applicazioni software. Un componente chiave è che linfrastruttura SaaS è “disponibile per gli utenti, ma nascosta”. Un vantaggio di SaaS è che gli utenti non devono installare e mantenere il software, il che elimina qualsiasi requisito complesso. Con SaaS, il cliente inoltre non richiede alcuna licenza iniziale, il che porta a costi inferiori perché i fornitori si limitano a mantenere una singola applicazione.

Differenze tra architettura orientata ai servizi e microservizi

Microservices, noto anche come Microservice Architecture, è uno “stile architettonico che struttura unapplicazione come un insieme di piccoli servizi autonomi, modellato intorno a un dominio aziendale”.

Mentre i microservizi e larchitettura orientata ai servizi sono simili in un certo senso, le differenze principali derivano dalla loro funzionalità. I servizi sono, ovviamente, la componente principale di entrambi. Esistono quattro tipi fondamentali di servizi:

Servizio funzionale: definiscono le operazioni di core business

Servizio aziendale: implementano la funzionalità definita dai servizi funzionali

Applicazione servizio: questi sono limitati a contenuti specifici dellapplicazione

Servizio di infrastruttura: implementa attività non funzionali come autenticazione, controllo, sicurezza e registrazione

Come puoi vedere, ciascuno di questi servizi si basa su quello precedente, creando un sistema che non è solo facile da usare, ma offre una varietà di modi per gestire la tua attività. Come con qualsiasi funzionalità, si tratta di capire cosa funziona meglio per te e per la tua azienda.

Puoi leggere ulteriori informazioni sullarchitettura orientata ai servizi e sui microservizi qui.

Alcune considerazioni finali Sullarchitettura orientata ai servizi

Come puoi immaginare, Larchitettura orientata ai servizi può essere un po difficile da decifrare, ma una volta compresi i dettagli ei vantaggi che può fornire alla tua azienda, sarai entusiasta di averlo scoperto.

Abbiamo fornito diverse eccellenti risorse sullarchitettura orientata ai servizi in questo articolo e abbiamo un altro paio di articoli in arrivo che approfondiranno il concetto e ti forniranno ancora più risorse per aiutarti a spingere la tua attività a il livello successivo.

Indipendentemente dalla direzione in cui decidi di andare quando fornisci servizi ai tuoi clienti, è importante tenere presente che cose diverse funzioneranno per persone diverse. Sebbene non sia possibile fornire servizi personalizzati per ogni singolo cliente che hai assunto, puoi fornire una gamma di servizi che si adatteranno alle esigenze più comuni dei tuoi clienti.

Negli articoli futuri, esamineremo al Web 2.0 e approfondire i microservizi dellarchitettura orientata ai servizi.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *