Disponibilità di gestori di coda host argomento cluster
Progetta il tuo cluster di pubblicazione / sottoscrizione per ridurre al minimo il rischio che, qualora un gestore code host argomento diventi non disponibile, il cluster non sarà più in grado di elaborare il traffico per l'argomento. L'effetto di un gestore code host argomento che diventa non disponibile dipende dal fatto che il cluster stia utilizzando l'instradamento host argomento o l'instradamento diretto.
Disponibilità dei gestori di coda host argomento che utilizzano l'instradamento diretto
Per l'instradamento diretto, di solito non si definisce lo stesso argomento cluster su più di un gestore code cluster. Questo perché l'instradamento diretto rende l'argomento disponibile in tutti i gestori di coda nel cluster, non importa quale gestore code è stato definito su.Vedi Più cluster topic cluster in un cluster diretto.
In un cluster, ogni qualvolta l'host di un oggetto clustered (ad esempio una coda cluster o un argomento clustered) diventa non disponibile per un periodo prolungato, gli altri membri del cluster alla fine scadranno la conoscenza di quegli oggetti. Nel caso di un argomento clustered, se il gestore code host dell'argomento cluster diventa non disponibile, gli altri gestori di coda continuano a elaborare richieste di pubblicazione / sottoscrizione per l'argomento in modo diretto (cioè inviare pubblicazioni a sottoscrizioni su gestori di code remote) per almeno 60 giorni da quando l'argomento hosting code manager è stato ultimo in comunicazione con i gestori di coda di repository completi. Se il gestore code su cui si è definito l'oggetto argomento cluster non viene mai reso disponibile di nuovo, alla fine gli oggetti di argomento memorizzati nella cache sugli altri gestori della coda vengono cancellati e l'argomento ritorna ad un argomento locale, in cui gli abbonamenti di caso cessano di ricevere pubblicazioni da applicazioni collegate a gestori di code remote.
Con il periodo di 60 giorni per recuperare il gestore code su cui si definisce un oggetto argomento cluster, c'è poco bisogno di prendere misure speciali per garantire che un host argomento cluster rimanga disponibile (nota, tuttavia, che qualsiasi abbonamento definito sull'host argomento cluster non disponibile non resti disponibile). Il periodo di 60 giorni è sufficiente per ciondarsi per problemi tecnici, e rischia di essere superato solo a causa di errori amministrativi. Per mitigare tale possibilità, se l'host dell'argomento cluster non è disponibile, tutti i membri del cluster scrivono messaggi di registrazione errori ormonali, affermando che il loro oggetto argomento cluster cached non è stato aggiornato. Rispondere a questi messaggi facendo in modo che il gestore code su cui è definito l'oggetto argomento cluster, sia in esecuzione. Se non è possibile rendere nuovamente disponibile il gestore code host dell'argomento cluster, definire la stessa definizione di argomento clustered, con esattamente gli stessi attributi, su un altro gestore code nel cluster.
Disponibilità dei gestori di coda host argomento che utilizzano l'instradamento host argomento
Per l'instradamento dell'host topic, tutta la messaggistica di pubblicazione / sottoscrizione per un argomento viene instradata attraverso i gestori di coda dove tale argomento è definito. Per questo motivo è molto importante considerare la disponibilità continuativa di questi gestori di code nel cluster. Se un host topic diventa non disponibile, e nessun altro host esiste per l'argomento, il traffico dagli editori agli abbonati su diversi gestori di code nel cluster si ferma immediatamente per l'argomento. Se sono disponibili ulteriori host topic, i gestori code del cluster instradano il nuovo traffico di pubblicazione attraverso questi host topic, fornendo una disponibilità continua di percorsi di messaggi.
Come per gli argomenti diretti, dopo 60 giorni, se il primo host topic è ancora non disponibile, la conoscenza di quell' argomento dell'host topic viene rimossa dal cluster. Se questa è l'ultima definizione rimanente per questo argomento nel cluster, tutti gli altri gestori di coda cessano di inoltrare le pubblicazioni su qualsiasi topic host per il routing.
Per garantire un'adeguata disponibilità e scalabilità è quindi utile, se possibile, definire ogni argomento su almeno due gestori di code cluster. Questo dà protezione contro qualsiasi gestore code host argomento che diventa non disponibile. Vedere anche Più definizioni di argomento cluster in un cluster router instradato.
Se non è possibile configurare più host topic (ad esempio perché è necessario preservare l'ordinamento dei messaggi) e non è possibile configurare solo un host topic (perché la disponibilità di un singolo gestore code non deve influire sul flusso delle pubblicazioni agli abbonamenti su tutti i gestori di coda presenti nel cluster), considerare la configurazione dell'argomento come un argomento diretto instradato. Questo evita l'affidamento su un singolo gestore code per l'intero cluster, ma richiede comunque che ogni singolo gestore code sia disponibile al fine di elaborare abbonamenti ed editori ospitati localmente.