/ / ¿Cómo puedo agregar una demora en el procesamiento de los mensajes fallidos en ServiceStack Redis MQ - serviceestack, mq, servicestack.redis, redismqserver

¿Cómo podría agregar un retraso en el procesamiento de mensajes fallidos en ServiceStack Redis MQ - servicestack, mq, servicestack.redis, redismqserver

¿Hay una manera fácil de hacer que Servicestack espere x segundos antes de volver a intentar un elemento MQ fallido (utilizando Redis MQ)? Por el momento solo lo intenta 3 veces consecutivas sin demora.

Respuestas

3 para la respuesta № 1

Cuando registra un controlador MQ, también puede registrar un controlador de errores al que se llama después de publicar un mensaje fallido que puede usar para agregar un retraso personalizado, por ejemplo:

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