[rabbitmq-discuss] .NET API - Using PublishConfirms to get Reliability
Michael Klishin
mklishin at gopivotal.com
Wed Feb 26 07:08:14 GMT 2014
On 26 Feb 2014, at 09:07, martywaz <marty.wasznicky at neudesic.com> wrote:
> First one is that Rabbit MQ is losing a few messages if both servers in the cluster are shut down.
See my earlier reply about peer unavailability not being detected immediately.
> Second one, Acks/Nacks seem to just get lost by Rabbit MQ.
Can you be more specific?
> Third one...only happens now again...The producer actually receives Acks for delivery tags/messages that don't exist in the its internal queue.
Can you isolate this problem?
> Fourth one....when both servers go down, sometimes, but not always, the consumer will not throw an exception when it tries to read the message in the while loop. i.e : if (!consumer.Queue.Dequeue(3000, out item)). The item comes back null, but If I look in the debugger, the consumer's and connection's isopen property is true...and the CloseReason is null.
Again, it takes time for OS to report a network failure.
QueueingConsumer will enqueue deliveries in a local queue (collection). When
you shut down your entire cluster, deliveries stop flowing so Dequeue returns null
but connection hasn’t detected network failure yet.
MK
Software Engineer, Pivotal/RabbitMQ
More information about the rabbitmq-discuss
mailing list