C#-NServiceBus异常处理和消息重试机制
作者:互联网
我们计划在应用程序中使用NServiceBus来调度消息.
在我们的例子中,每条消息都有timeToLive属性,该属性定义了应该处理此消息的时间段.
对于第一次尝试失败的消息处理,我们的计划是将其成功处理或timeToLive到期时,将其移至特定的重试存储(重试队列),然后将重试消息(重试之间存在一些超时).
如果timeToLive过期,我们计划记录消息内容并丢弃消息.
实际上,这种重试行为主要由我们正在实施的协议决定.
是否可以通过NServiceBus实现这种行为?我看到,失败的消息进入了特定的错误队列.是否可以创建指向错误队列的单独总线?
解决方法:
我建议您有一个单独的过程,该过程根据描述的逻辑监视错误队列执行重试.看一下nservicebus附带的ReturnToSourceQueue工具,以获取启发:
我有一篇关于如何处理故障的博客文章,这可能也会给您一些想法:
http://andreasohlund.net/2010/03/15/errorhandling-in-a-message-oriented-world/
希望这可以帮助!
标签:exception-handling,c,net,nservicebus 来源: https://codeday.me/bug/20191106/2000850.html