RabbitMQ management API access is now required
The transport now uses the RabbitMQ management API to verify broker requirements and enable delivery limit validation.
The RabbitMQ management plugin must be enabled, and the plugin's statistics and metrics collection must not be disabled. The port that the management API is using needs to be accessible by the transport. The default port is 15672
for HTTP and 15671
for HTTPS. See Configuring RabbitMQ management API access for configuration options.
RabbitMQ Client v7 Upgrade
The transport now uses RabbitMQ.Client v7, which exclusively supports an async API model. This change results in some breaking changes in the public API.
For details, see the RabbitMQ client changelog.
IRoutingTopology
Updates
The following changes have been made to IRoutingTopology
:
- All methods return a ValueTask.
- The type of the
channel
parameter has been changed fromRabbitMQ.
toClient. IModel RabbitMQ.
.Client. IChannel - The type of the
properties
parameter has been changed fromRabbitMQ.
toClient. IBasicProperties RabbitMQ.
.Client. BasicProperties - All methods include a CancellationToken as the last parameter.