Configurazione per la condivisione del carico di lavoro o la scalabilità

Questa configurazione è costituita da più motori di messaggistica in esecuzione in un cluster, ciascuno dei quali è limitato all'esecuzione su un particolare server. Una configurazione con condivisione del carico di lavoro consente di ottenere una maggiore velocità di trasmissione dei messaggi distribuendo il carico di messaggistica su più server.

Esistono due modi per ottenere questa configurazione:

Questo tipo di implementazione consente la condivisione del carico di lavoro attraverso la suddivisione delle destinazioni su più motori di messaggistica. Questa configurazione non consente il failover, poiché ogni motore di messaggistica può essere eseguito su un solo server. L'impatto di un guasto è inferiore rispetto a quello di una semplice implementazione, poiché se uno dei server o dei motori di messaggistica nel cluster si guasta, i motori di messaggistica rimanenti dispongono ancora di partizioni di destinazione operative. Tuttavia, i messaggi gestiti da un motore di messaggistica in un server guasto non sono disponibili fino al riavvio del server.

La configurazione della condivisione del carico di lavoro offre anche scalabilità, poiché è possibile aggiungere nuovi server al cluster senza influire sui motori di messaggistica esistenti nel cluster.

Il diagramma seguente mostra una configurazione di condivisione del carico di lavoro o scalabilità in cui sono presenti tre motori di messaggistica, ME1, ME2 e ME3, con archivi dati A, B e C, rispettivamente. I motori di messaggistica funzionano in un cluster di tre server e condividono il traffico che passa attraverso la destinazione. Ogni server si trova su un nodo separato, in modo che se un nodo si guasta, i server sui nodi rimanenti rimangono comunque disponibili.

Figura 1. Condivisione del carico di lavoro o configurazione della scalabilità
Il diagramma è descritto nel testo circostante.

Il diagramma seguente mostra cosa succede se server1 non funziona. ME1 non può essere eseguito e l'archivio dati A non è accessibile. ME1 Non è possibile elaborare i messaggi fino al ripristino di server1. ME2 e ME3 non subiscono alcuna modifica e continuano a elaborare i messaggi. Ora gestiranno tutto il nuovo traffico attraverso la destinazione.

Figura 2. Condivisione del carico di lavoro o configurazione della scalabilità dopo il fallimento di un server1
Il diagramma è descritto nel testo circostante.

Il diagramma seguente mostra cosa succede se server1 viene ripristinato e server2 non funziona. ME2 non è possibile eseguire e l'archivio dati B non è accessibile. ME2 Non è possibile elaborare i messaggi fino al ripristino di server2. ME1 e ME3 possono elaborare i messaggi e ora gestiranno tutto il nuovo traffico attraverso la destinazione.

Figura 3 Configurazione della condivisione del carico di lavoro o della scalabilità dopo il ripristino di server1 e il guasto di server2
Il diagramma è descritto nel testo circostante.