2009-05-18 16 views
16

Qual è la differenza tra una coda di lettere morte e una coda di back-out?Qual è la differenza tra una coda Dead Letter e una coda di back-out?

Nei termini di WebSphere MQ e in termini di server delle applicazioni.

Tutti i server di app J2EE/JEE dispongono di un provider MQ hanno anche un costrutto di una coda di messaggi non recapitabili o è qualcosa di specifico per WebSphere MQ?

mia comprensione di un back out di coda è la seguente:

Se MQ non è in grado di consegnare il messaggio a una destinazione dopo un numero specificato di tentativi sposta il messaggio alla coda di nuovo fuori.

Non ho una chiara comprensione di una coda Dead Letter.

Apprezzare qualsiasi assistenza.

risposta

10

La coda di messaggi non instradabili è sempre stata utilizzata in MQSeries (l'ultima volta che ho utilizzato MQ) per archiviare i messaggi arrivati ​​al gestore code ma la coda non esisteva.

Per esempio, se il messaggio era l'indirizzo al gestore code X e coda Y, sarebbe arrivato attraverso un canale con al responsabile X.

Se il canale del ricevitore ha rilevato che non c'era alcuna coda Y, sarebbe stato inserito nella coda di messaggi non recapitati.

La coda di backout, d'altra parte, è più di una cosa a livello di applicazione (almeno in termini di MQ). Quando un client MQ non è in grado di elaborare il messaggio per qualche motivo, può eseguirne il backup per un'elaborazione successiva (torna alla coda originale).

Se viene eseguito il backout troppe volte (la soglia può essere configurata), viene spostato nella coda di back-up.

+0

Ecco ulteriori informazioni: http://www.ibm.com/developerworks/websphere/library/techarticles/0803_titheridge/0803_titheridge.html –

+0

@paxdiablo, questa coda di backout è gestita dal manager MQ o il client deve connettersi a questa fila? – bluelurker

+0

Sebbene la coda di back-out sia gestita dal gestore code, i messaggi di routing a una coda di back-out vengono eseguiti dal client JMS e XMS di MQ. – Shashi

1

La coda di messaggi non funzionanti si comporta come un backout. Tratto la Dead Letter Queue come il crematorio per i messaggi che non possono essere recuperati nelle code di errore o di backout e che hanno bisogno di raccogliere alcuni dati specifici non commerciali specifici. Una volta acquisite le informazioni, il messaggio viene eliminato definitivamente. Il backout è utile per analizzare i messaggi per i dati che potrebbero dover essere recuperati per rielaborarli completamente o per essere poi reindirizzati a un'area applicativa per la loro decisione.

4

Grazie per le risposte. Ho anche capito che se l'applicazione non è in grado di spostare il messaggio alla coda di back-out (BOQ) per qualche motivo, allora viene fatto un tentativo di spostare la coda nella coda di lettere morte (DLQ).

Nella nostra applicazione è successo. C'erano alcuni problemi di autorizzazione nella coda di back-out, quindi il messaggio non può essere scritto nel BOQ e finisce nella coda delle lettere morte.

0

Una coda di messaggi non recapitabili è anche una coda locale. Se proviamo a inserire un messaggio da una coda in un'altra coda e il messaggio non è stato inviato alla destinazione corretta, in questo momento il meassage andrà a una coda di messaggi non recapitati.

Problemi correlati