Prestazioni «congrue» agli ambienti in crescita

Sono diversi gli elementi che possono contribuire a valutare la buona qualità di una Soa. Ecco quelli da tenere accuratamente sott’occhio

I Web service sono basati su un insieme di standard e protocolli, che permette
agli utenti di compiere richieste ai sistemi remoti parlando un linguaggio comune,
standardizzato, e utilizzando protocolli di comunicazione uniformi, come Http
(Hypertext transfer protocol) o Smtp (Simple mail transfer protocol). Con il
proliferare dell’utilizzo dei servizi Web in azienda, tuttavia, si impone
con urgenza il problema di assicurarne una qualità costante.

Le prestazioni di un Web service sono misurate in termini di throughput, latenza,
tempo di esecuzione e di transazione. Il throughput rappresenta il numero di
servizi Web invocati che l’architettura riesce a mettere a disposizione
dei richiedenti in un dato periodo di tempo. La latenza, invece, è il
tempo che intercorre tra l’invio di una richiesta e il ricevimento della
risposta. Il tempo di esecuzione è quello richiesto dal servizio Web
per processare una certa sequenza di attività, mentre il tempo di transazione
è quello che trascorre mentre il servizio Web completa una transazione.
Un alto throughput, basse latenze e tempi di esecuzione, uniti a una transazione
veloce sono, in sostanza, sinonimi di servizi Web di qualità. Le performance
complessive, tuttavia, sono legate anche ad alcuni elementi “esterni”
quali la logica applicativa, la qualità delle reti e, soprattutto, i
protocolli di messaging e trasporto, quali Soap (Simple object access protocol)
e Http.

Protocolli più sicuri
L’attendibilità, però, è la misura più spesso
utilizzata per valutare la qualità complessiva di un servizio Web e fa
riferimento alla sicurezza che un certo messaggio sia stato scambiato tra un
emittente e un ricevitore. Questo, infatti, è uno dei più grandi
problemi delle Soa, che si fondano su un protocollo (Http) che risulta, per
sua natura, piuttosto “insicuro”, in quanto non offre garanzie sul
fatto che un certo messaggio sia stato effettivamente recapitato al destinatario.
Ecco perché la soluzione più efficace a questo problema è
rappresentata dall’adozione di un protocollo di trasporto più affidabile,
come Httpr (Reliable Http), Rest (Representational state transfer) e Beep (Blocks
extensible exchange protocol). In abbinamento all’attendibilità,
è utile non trascurare l’integrità dei servizi Internet,
valutabile nella misura in cui un sistema o un componente è in grado
di prevenire l’accesso non autorizzato a un computer, un dato, un programma
o, nel caso delle architetture Soa, una transazione.

Il nodo della protezione
Le transazioni tra Web service sono nativamente asincrone (ovvero viene attivata
una richiesta e c’è una risposta successiva, mai contestuale),
quindi l’integrità risulta una questione fondamentale, la cui compromissione
può essere rilevata, spesso, solo con notevole ritardo. La sicurezza
e la corretta orchestrazione dei processi entrano in gioco a questo livello.
Alcuni protocolli di recente pubblicazione possono contribuire ad assicurare
l’integrità. Tra i più noti, Bpel4ws (Business process execution
language for Web service), Ws-Coordination (Web service coordination) e Btp
(Business transaction protocol).
In effetti, però, le realtà più evolute, che già
da tempo hanno sperimentato le Soa, prestano sempre più attenzione ad
altri elementi di certificazione della qualità di queste architetture.
Anzitutto, l’accessibilità dei servizi Web, ovvero la garanzia
della capacità di questi componenti software di riuscire a evadere le
richieste che gli vengono poste. Questo è possibile essenzialmente attraverso
l’adozione di strumenti di service pooling (che raggruppano le richieste
e le smistano più in fretta, evitando di intasare la rete) o di bilanciamento
dei carichi di lavoro.

La clusterizzazione
La disponibilità dei Web service, ovvero l’assicurazione che siano
pronti per l’immediato utilizzo, è un altro elemento utile ad assicurare
che le Soa implementate in azienda siano “congrue” con le necessità
dell’impresa. Questo è ottenibile implementando soluzioni di gestione
ad hoc e di clusterizzazione dei Web service. Un ruolo non trascurabile, infine,
è giocato dalla garanzia della protezione dei Web service, che si fonda
sulla cifratura dei messaggi attraverso Xml Encryption, Xml Key management specification
e Saml (Security assertion markup language), in abbinamento alla creazione di
Wan (Wide area network) private, reti private virtuali (Vpn) o piattaforme P3P
(Platform for privacy preference) per lo scambio in sicurezza dei servizi.

LASCIA UN COMMENTO

Inserisci il tuo commento
Inserisci il tuo nome