[rabbitmq-discuss] Getting Rid of a Faulty message
simone.busoli at gmail.com
Sun Jan 15 10:54:55 GMT 2012
RabbitMQ has some mechanisms to handle this, but you'd first need to
describe what you want to do with the faulty message.
- IF you know the message is going to bring down the other processors
why aren't you just acking (or nacking or rejecting with requeue=false) it
before crashing the first processor? I am assuming this is an option, it
may not be.
- If you cannot even modify the part of the code which interacts with
RabbitMQ in the processors you could enable the autoack option, and each
message will be considered acked as soon as it leaves the broker network
stack. Beware that this relaxes the reliability constraints you may have,
introducing the chance of loosing messages
On Sun, Jan 15, 2012 at 10:16, Oren Shochat <orenshome at gmail.com> wrote:
> I have a RabbitMQ on Amazon load balancing between N processors that do
> heavy image processing algorithms (running 1-8 min on an 8 core computer) .
> I'm using RabbitMQ fair dispatch and message acknowledgement to make sure
> the Algorithm requests are distributed fairly amongst the processors.
> However once in a while I get a message that causes the processor to
> crash. RabbitMQ of course (since no ack received and connection terminated)
> makes sure the message goes to the next processor which also crashes
> because processors share the same code. Soon all the processors are
> down. They go up again, but the faulty message stays in the system until I
> get the alarms and purges the RabbitMQ queue.
> The processors have a 10 years old legacy code written by multiple
> mathematicians and is almost impossible to protect against all faulty data.
> Is there any mechanism in RabbitMQ that can still give me load balancing
> but kick out a message that cannot be processed by consumers?
> rabbitmq-discuss mailing list
> rabbitmq-discuss at lists.rabbitmq.com
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the rabbitmq-discuss