MongoDbQueueService 0.0.20
See the version list below for details.
dotnet add package MongoDbQueueService --version 0.0.20
NuGet\Install-Package MongoDbQueueService -Version 0.0.20
<PackageReference Include="MongoDbQueueService" Version="0.0.20" />
<PackageVersion Include="MongoDbQueueService" Version="0.0.20" />
<PackageReference Include="MongoDbQueueService" />
paket add MongoDbQueueService --version 0.0.20
#r "nuget: MongoDbQueueService, 0.0.20"
#addin nuget:?package=MongoDbQueueService&version=0.0.20
#tool nuget:?package=MongoDbQueueService&version=0.0.20
Abstract
The MongoDbQueueService it's my vision of what a queue service should be: Light, easy to use and using the new coding standards.
This intension of this project is not replace any comercial queue implementation or vision of queue system, but, it's a theorical and personal vision of how developers should solve the queue problem.
Another goal of this project if to be able to set the full Application Life Cycle since developent, CI/CD and release as nuget package.
What is included in the Package
MongoDbQueueService
Service responsible to Publish and Subscribe messages into a queue.
How to use MongoDbQueueService
First of all, the worker that will use the MongoDbQueueService will only subscribe to one queue and publish to one queue. This is a design decision in order to have a "Light" queue service. Subscribing different queue should mean have different "workers".
Configuration file
By convention the configuration file should be called appsettings.json
and will have three (3) possible sections:
- subscriberSettings This section describes the connection string to the MongoDb and the queue that will be listen.
"subscriberSettings": {
"connectionString": "mongodb://localhost:27017",
"database": "MongoDatabase",
"queue": "Queue2Listen",
"workerName": "WORKER_NAME"
}
- publisherSettings This section describes the connection string to the MongoDb and the follow up queue the worker will publish messages.
"publisherSettings": {
"connectionString": "mongodb://localhost:27017",
"database": "MongoDatabase",
"queue": "Queue2Publish"
}
Subscriber
Publisher
Publish a message to a specific queue. Instaciate the Publisher can be done in three ways:
- Publish(debug = false);
- Publish(PublisherSettings settings);
- Publish(string url, string database, string collection);
Using the parameter less will use configuration stored in the appsettings.json
. Providing debug
parameter signal the Publisher to look for the file in the same folder the binary (debug = true) or in the folder /settings (debug = false).
This lib assumes that will run in the container enviroment.
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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.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. |
-
.NETStandard 2.1
- Microsoft.Extensions.Hosting.Systemd (>= 7.0.0)
- MongoDB.Bson (>= 2.19.0)
- MongoDB.Driver (>= 2.19.0)
- System.Reactive.Linq (>= 5.0.0)
- System.Text.Json (>= 7.0.2)
- System.Threading (>= 4.3.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 |
---|---|---|
0.0.21 | 310 | 3/19/2023 |
0.0.20 | 270 | 2/17/2023 |
0.0.19 | 434 | 10/4/2022 |
0.0.18 | 493 | 9/23/2022 |
0.0.17 | 437 | 9/22/2022 |
0.0.16 | 448 | 9/22/2022 |
0.0.15 | 475 | 9/22/2022 |
0.0.14 | 464 | 9/22/2022 |
0.0.13 | 438 | 9/10/2022 |
0.0.12 | 437 | 9/6/2022 |
0.0.11 | 426 | 9/2/2022 |
0.0.10 | 434 | 8/30/2022 |
0.0.9 | 425 | 8/27/2022 |
0.0.8 | 436 | 8/27/2022 |
0.0.7 | 450 | 8/27/2022 |
0.0.4 | 435 | 8/27/2022 |
0.0.1 | 454 | 8/27/2022 |