Panoramica relativa all'isolamento dei moduli e delle destinazioni

Quando si sviluppano i moduli, verranno identificati i servizi che possono essere utilizzati da più moduli. Potenziando i servizi in questo modo, vengono minimizzati il ciclo di sviluppo ed i costi. Quando un servizio viene utilizzato da molti moduli, è necessario isolare i moduli di richiamo dalla destinazione, in modo che se venisse aggiornata la destinazione, il passaggio al nuovo servizio sia noto al modulo di richiamo. Questo argomento confronta il modello di richiamo semplice e il modello di richiamo isolato, fornendo un esempio del modo in cui l'isolamento può essere utile. Questo esempio specifico non rappresenta il solo modo di isolare i moduli dalle destinazioni.

Modello di richiamo semplice

Durante lo sviluppo di un modulo, è possibile utilizzare i servizi che si trovano in altri moduli. È possibile effettuare tale operazione importando il servizio nel modulo e richiamando quel servizio. Il servizio importato è "collegato" al servizio esportato dall'altro modulo in WebSphere Integration Developer o mediante il bind del servizio nella console di gestione. Il modello di richiamo semplice illustra questo modello.
Figura 1. Modello di richiamo sempliceLa figura illustra un'applicazione, MyModule che richiama un servizio, ServiceA. Il richiamo indica un'interfaccia di importazione nell'applicazione che è connessa ad un'interfaccia di esportazione nel ServiceA dell'applicazione, DifferentModule.

Modello di richiamo isolato

Per modificare la destinazione di un richiamo senza arrestare i moduli di richiamo, è possibile isolare i moduli di richiamo dalla destinazione del richiamo. Ciò consente ai moduli di continuare l'elaborazione mentre si modifica la destinazione, poiché non si sta modificando il modulo, ma la destinazione derivata. L'esempio di isolamento delle applicazioni illustra il modo in cui l'isolamento consente di modificare la destinazione senza condizionare lo stato del modulo di richiamo.

Esempio di isolamento delle applicazioni

Utilizzando il modello di richiamo semplice, più moduli che richiamano lo stesso servizio sembrerebbero Più applicazioni che richiamano un singolo servizio. MODA, MODB e MODC richiamano tutti CalculateFinalCost.
Figura 2. Più applicazioni che richiamano un singolo servizioLa figura illustra più moduli che richiamano direttamente CalculateFinalCost.
Il servizio fornito da CalculateFinalCost deve essere aggiornato, pertanto i nuovi costi riguardano tutti i moduli che utilizzano il servizio. Il team di sviluppo crea e verifica un nuovo servizio UpdatedCalculateFinal per incorporare le modifiche. Si è pronti a portare in produzione il nuovo servizio. Senza isolamento, sarebbe stato necessario aggiornare tutti i moduli che richiamano CalculateFinalCost per richiamare UpdatedCalculateFinal. Con l'isolamento, è necessario modificare solo il bind che collega il modulo di buffer alla destinazione.
Nota: La modifica del servizio in questo modo consente di continuare a fornire il servizio di origine agli altri moduli che possono necessitare.
Utilizzando l'isolamento, si crea un modulo di buffer tra le applicazioni e la destinazione (consultare Modello di richiamo isolato che richiama UpdateCalculateFinal).
Figura 3. Modello di richiamo isolato che richiama UpdateCalculateFinalLa figura illustra ModA, ModB e ModC che richiamano CalculateFinalCost. Il richiamo si risolve nell'applicazione ModBuffer che contiene un servizio denominato CalculateFinalCost. Questo servizio indica il CalculateFinalCost reale nell'applicazione ModReale.
Con questo modello, i moduli di richiamo non cambiano, è necessario solo modificare il bind dall'importazione del modulo di buffer alla destinazione (consultare Modello di richiamo isolato che richiama UpdatedCalculateFinal).
Figura 4. Modello di richiamo isolato che richiama UpdatedCalculateFinalLa figura è simile alla figura precedente con il bind da CalculateFinalCost in ModBuffer indicante l'UpdatedCalculateFinal.
Se il modulo di buffer richiama la destinazione in modo sincronico, quando si riavvia il modulo di buffer (un modulo di mediazione o un servizio per il modulo aziendale) i risultati restituiti all'applicazione di origine provengono dalla nuova destinazione. Se il modulo di buffer richiama la destinazione in modo sincronico, i risultati restituiti all'applicazione di origine provengono dalla nuova destinazione al successivo richiamo.
Informazioni correlate
Modifica delle destinazioni

(c) Copyright IBM Corporation 2005, 2006.
Questo Infocenter è alimentato dalla tecnologia Eclipse (http://www.eclipse.org)