Shuttle.Esb.RabbitMQ
15.0.0
Prefix Reserved
dotnet add package Shuttle.Esb.RabbitMQ --version 15.0.0
NuGet\Install-Package Shuttle.Esb.RabbitMQ -Version 15.0.0
<PackageReference Include="Shuttle.Esb.RabbitMQ" Version="15.0.0" />
paket add Shuttle.Esb.RabbitMQ --version 15.0.0
#r "nuget: Shuttle.Esb.RabbitMQ, 15.0.0"
// Install Shuttle.Esb.RabbitMQ as a Cake Addin #addin nuget:?package=Shuttle.Esb.RabbitMQ&version=15.0.0 // Install Shuttle.Esb.RabbitMQ as a Cake Tool #tool nuget:?package=Shuttle.Esb.RabbitMQ&version=15.0.0
RabbitMQ
PM> Install-Package Shuttle.Esb.RabbitMQ
This RabbitMQ implementation follows the at-least-once
delivery mechanism supported by Shuttle.Esb.
If necessary you may want to use an outbox for a store-and-forward
solution. By using a transactional outbox such as the Shuttle.Esb.Sql.Queue
implementation you could roll back sending of messages on failure.
Installation
If you need to install RabbitMQ you can <a target='_blank' href='https://www.rabbitmq.com/download.html'>follow these instructions</a>.
Configuration
The URI structure is rabbitmq://configuration-name/queue-name
.
services.AddRabbitMQ(builder =>
{
builder.AddOptions("local", new RabbitMQOptions
{
Host = "127.0.0.1",
VirtualHost = "/",
Port = -1,
Username = "shuttle",
Password = "shuttle!",
PrefetchCount = 25,
QueueTimeout = TimeSpan.FromMilliseconds(25),
RequestedHeartbeat = TimeSpan.FromSeconds(30),
ConnectionCloseTimeout = TimeSpan.FromSeconds(1),
OperationRetryCount = 3,
UseBackgroundThreadsForIO = true,
Priority = 0,
Persistent = true,
Durable = true
});
});
The default JSON settings structure is as follows:
{
"Shuttle": {
"RabbitMQ": {
"local": {
"Host": "127.0.0.1",
"VirtualHost": "/",
"Port": -1,
"Username": "shuttle",
"Password": "shuttle!",
"PrefetchCount": 25,
"QueueTimeout": "00:00:25",
"RequestedHeartbeat": "00:00:30",
"ConnectionCloseTimeout": "00:00:01",
"OperationRetryCount": 3,
"UseBackgroundThreadsForIO": true,
"Priority": 0,
"Persistent": true,
"Durable": true
}
}
}
}
Options
Option | Default | Description |
---|---|---|
Host |
The RabbitMQ host to connect to. | |
VirtualHost |
"/" |
The virtual host to connect to. |
Port |
-1 | Specifies the port to connect to. A value of -1 represents AmqpTcpEndpoint.UseDefaultPort . |
Username |
The username to send as a credential. | |
Password |
The password to send as a credential. | |
PrefetchCount |
25 | Specifies the number of messages to prefetch from the queue. |
QueueTimeout |
00:00:25 |
How long to wait when retrieving a message from the queue before timing out and returing null . |
RequestedHeartbeat |
00:00:30 |
Heartbeat timeout to use when negotiating with the server. |
ConnectionCloseTimeout |
00:00:01 |
The duration to wait wait for connections to be closed. |
OperationRetryCount |
3 | How many times to retry relevant queue operations in the event that they fail. Once the retries have run out the original exception is thrown. |
UseBackgroundThreadsForIO |
true |
Determines whether backgrounds threads are used for the I/O loop. |
Priority |
0 | Determines the number of priorities (x-max-priority ) supported by the queue. |
Persistent |
true | Determines whether messages will be persisted. Please be sure of the possible consequences before setting to 'false'. |
Durable |
true | Determines whether the queue is durable. Please be sure of the possible consequences before setting to 'false'. |
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
- RabbitMQ.Client (>= 6.8.1)
- Shuttle.Esb (>= 15.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
15.0.0 | 83 | 8/5/2024 |
14.0.1 | 95 | 5/3/2024 |
14.0.0 | 123 | 4/30/2024 |
13.2.1 | 991 | 12/1/2022 |
13.2.0 | 899 | 9/16/2022 |
13.1.0 | 893 | 9/11/2022 |
13.0.0 | 911 | 9/4/2022 |
12.0.1 | 1,079 | 4/9/2022 |
12.0.0 | 956 | 3/21/2022 |
11.0.7 | 4,048 | 1/20/2021 |
11.0.6 | 1,047 | 11/27/2020 |
11.0.5 | 1,145 | 9/7/2020 |
11.0.4 | 1,129 | 7/19/2020 |
11.0.3 | 1,101 | 5/21/2020 |
11.0.2 | 1,113 | 4/28/2020 |
11.0.1 | 6,222 | 8/10/2019 |
11.0.0 | 1,480 | 6/21/2019 |
10.0.15 | 35,937 | 10/28/2018 |
10.0.14 | 1,417 | 10/17/2018 |
10.0.13 | 1,417 | 10/15/2018 |
10.0.12 | 1,409 | 10/13/2018 |
10.0.10 | 1,451 | 10/8/2018 |
10.0.9 | 1,439 | 10/6/2018 |
10.0.8 | 1,426 | 9/22/2018 |
10.0.7 | 1,520 | 8/26/2018 |
10.0.6 | 1,650 | 7/4/2018 |
10.0.5 | 1,653 | 4/12/2018 |
10.0.4 | 1,706 | 4/8/2018 |
10.0.3 | 1,676 | 2/13/2018 |
9.0.1 | 1,529 | 8/6/2017 |
8.0.2 | 1,512 | 5/15/2017 |
8.0.1 | 1,993 | 4/13/2017 |
8.0.0 | 1,541 | 3/24/2017 |
7.0.0 | 2,084 | 10/4/2016 |
6.0.5 | 2,158 | 7/23/2016 |
6.0.4 | 1,640 | 6/21/2016 |
6.0.3 | 1,578 | 6/20/2016 |
6.0.2 | 1,509 | 6/4/2016 |
6.0.1 | 1,930 | 4/24/2016 |
6.0.0 | 1,697 | 4/24/2016 |
3.9.6 | 1,575 | 4/3/2016 |
3.9.5 | 1,740 | 3/22/2016 |