Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Improve connection limits, introduce per-protocol connection limits #16347

@michaelklishin

Description

@michaelklishin

This is an umbrella issue for a number of closely related discussions on the limits RabbitMQ supports or should support with @the-mikedavis @ansd @acogoluegnes.

Problem Definition

The VMware, Inc. part of the core team proposes reviewing our limits to eventually (likely before 4.4.0) converge on the following limits design/structure/separation:

  1. Per-user and per-virtual host apply to all protocols
  2. connection_max covers core protocols (AMQP 1.0, AMQP 0-9-1)
  3. {plugin}.connection_max covers each plugin protocol, including their Protocol-over-WebSockets variants, so mqtt.connections_max will cover both MQTT and MQTT-over-WebSockets

Note that most of this design is already in place but given the number of limits and protocols RabbitMQ supports, we need to review that nothing is missing, in particular for the per-user and per-virtual host limits.

HTTP API

If we put the WebSockets-based protocols aside, the HTTP API is not really covered by the above limits and given the request-oriented nature of HTTP (even with persistent connections, even with HTTP/2, HTTP/3), the protective measure here is a Ranch-level connection limit introduced in #7753, #7593.

Tanzu RabbitMQ Protocols

connections_max should cover AMQP 1.0-over-Websockets since its a WebSocket variant of the core protocols.

Remaining Items as a TODO List

Metadata

Metadata

No fields configured for Feature.

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions