AMQP 0.9.1 - require publisher confirmations via settings/configuration #14971
Replies: 5 comments 9 replies
-
|
Would the motivation be to try to force users into "the pit of success" or something else? If so this needs to be done for all (protocols) and not just the legacy one. |
Beta Was this translation helpful? Give feedback.
-
|
What's the difference between accepting publishes without confirms and the client being forced to get confirms but ignoring them? Knowledge of them? Something else? |
Beta Was this translation helpful? Give feedback.
-
|
@kjnilsson Yes, "the pit of success" is a great way to say it. Since publisher confirms are the only back pressure mechanism that the server has to the client, they're essential for protecting the server from being overwhelmed. |
Beta Was this translation helpful? Give feedback.
-
|
Combined with automagical handling of publishing confirms, like in the .NET client starting with 7.0, this feature makes sense. However, I'm afraid the penalty hit of this setting on the hot code path will be meaningful, and it will take a long time to update all clients to support automagical publisher confirm handling. Right now we have little mileage on the .NET client 7.x in the grand scheme of things. |
Beta Was this translation helpful? Give feedback.
-
|
Requiring publisher confirms is a means to exert backpressure on clients which flood the broker. We should also consider if we could provide demand-balance (backpressure or even load shedding) aside from confirms. In protocols where flow-control isn't built in (like non-legacy AMQP or MQTT) maybe we could temporarily stop reading from the connection TCP socket like the alarm mechanism when a throughput threshold is exceeded, or drop publishes which do not require confirms. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
RabbitMQ series
4.2.x
Operating system (distribution) used
Linux
How is RabbitMQ deployed?
Other
What would you like to suggest for a future version of RabbitMQ?
Overview
Considering the importance of using publisher confirmations in AMQP 0.9.1, it would be great if there were a way to enforce their use. Here's the general idea:
basic.publish406?)Configuring
Requiring publisher confirmations could be configured via some or all of these methods:
rabbitmq.confThoughts?
Beta Was this translation helpful? Give feedback.
All reactions