Tag: easynetq

如何使用EasyNetQ / RabbitMQ进行error handling

我正在使用带有EasyNetQ库的C#中的RabbitMQ。 我在这里使用了pub / sub模式。 我仍然有一些问题希望有人可以帮助我: 在消费消息时出现错误时,它会自动移至错误队列。 如何实现重试(以便将其放回原始队列,当它无法处理X次时,它会移动到死信队列)? 据我所知,总有1个错误队列用于转储来自所有其他队列的消息。 如何为每种类型设置1个错误队列,以便每个队列都有自己的关联错误队列? 如何轻松重试错误队列中的消息? 我试过Hosepipe,但它只是将消息重新发布到错误队列而不是原始队列。 我不喜欢这个选项,因为我不想在控制台中摆弄。 我最好只针对错误队列进行编程。 任何人?

在exception时重新排队消息

我正在寻找一种可靠的方法来重新排队无法正确处理的消息 – 目前。 我一直在关注http://dotnetcodr.com/2014/06/16/rabbitmq-in-net-c-basic-error-handling-in-receiver/ ,似乎支持在RabbitMQ中重新排队消息API。 else //reject the message but push back to queue for later re-try { Console.WriteLine(“Rejecting message and putting it back to the queue: {0}”, message); model.BasicReject(deliveryArguments.DeliveryTag, true); } 但是我正在使用EasyNetQ。 所以想知道我将如何做类似的事情。 bus.Subscribe(“my_subscription_id”, msg => { try { // do work… could be long running } catch () { // something went wrong […]

使用EasyNetQ for RabbitMQ时的自定义错误队列名称?

我没有将未处理的exception放入EasyNetQ_Default_Error_Queue,而是想知道是否有一种方法可以显式地说明应该用于给定应用程序的错误队列的名称,因此错误不会在这一个EasyNetQ_Default_Error_Queue中结束 ? 我可以看到如何指定常规消息队列名称,但没有找到任何有关错误队列名称的信息。