如何在ServiceStack Redis MQ中处理失败消息时添加延迟

时间:2015-05-26 16:19:37

标签: servicestack mq servicestack.redis redismqserver

是否有一种简单的方法可以让服务堆在重试失败的MQ项目之前等待x秒(使用Redis MQ)。目前它只是连续尝试3次而没有延迟。

1 个答案:

答案 0 :(得分:3)

注册MQ处理程序时,您还可以注册一个错误处理程序,该错误处理程序在发布可用于添加自定义延迟的失败消息后被调用,例如:

mqServer.RegisterHandler<MyRequest>(
    ServiceController.ExecuteMessage,
    (msgHandler, msg, ex) => Thread.Sleep(1000));