Ho più applicazioni esistenti che inviano e ricevono messaggi utilizzando MSMQ tramite l'API System.Messaging. Le code sono generalmente non transazionali e sono una combinazione di MSMQ 3 e 4.Creazione di un meccanismo tentativi in MSMQ senza WCF
Le applicazioni di ricezione gestiscono i messaggi poison ora nella misura in cui alla prima occorrenza di qualsiasi eccezione i messaggi vengono messi su una coda di errore per l'intervento manuale . Ma si scopre che la stragrande maggioranza dell'intervento manuale consiste semplicemente nel riportare il messaggio alla coda principale per un altro tentativo, a quel punto riesce. Quindi, per automatizzare tale processo, voglio aggiungere una funzione di riprova al destinatario in modo tale che i messaggi vengano spostati nella coda principale un determinato numero di volte con un determinato ritardo tra ciascuno.
Piuttosto che reinventare la ruota, voglio sfruttare tutto ciò che MSMQ fornisce fuori dalla scatola così come tutti i modelli popolari o di migliori pratiche intorno a questo. A tal fine, c'è molto altro sul supporto aggiuntivo per i messaggi velenosi in MSMQ 4. Ma non sembrano essere facilmente accessibili tramite .Net. Inoltre, gli unici riferimenti che posso trovare per usarli sono tramite WCF con un bind MSMQ.
Qualcuno può suggerire qualche schema o indicare qualsiasi esempio che implementa un nuovo tentativo se non si sta utilizzando WCF?
Grazie Jens. Sono a conoscenza di NServiceBus e MassTransit che sono, come WCF, le applicazioni basate su MSMQ con funzionalità di retry. Ma la mia domanda è quale sia un buon modo per creare nuove funzionalità se si sta costruendo un'applicazione su MSMQ. Non è il modo migliore per sostituire la mia applicazione con un'altra. –