Skip to content

RabbitMQ: Investigate Send Confirmations #131

@ric-evans

Description

@ric-evans

RabbitMQ does not offer bulk sending. However, when I looked into this, I did discover the rabbitmq backend does not use channel.wait_for_confirms() in send_message() despite configuring with channel.confirm_delivery().

Originally posted by @ric-evans in #58

Implementing wait_for_confirms() will inevitably slow down sending, but increase assurance. With a stable connection, we have not seen any notable cases of sends failing -- most likely this is because if the connection is unstable, then other things in the pipeline fail more drastically.

confirm_delivery() may currently be slowing down the broker.

Questions:

  • Do we make this configurable, i.e. use both wait_for_confirms() and confirm_delivery(), or neither?
  • Do we add a sort of quasi-batch sending where wait_for_confirms() is called on an intermittent basis?
  • What happens if wait_for_confirms() raises an exception? Do we persist so we can resend?

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingenhancementNew feature or requestrabbitmqAffects the RabbitMQ / pika broker api

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions