Looking for a .Net 5 developer to build a simple PoC (Proof of Concept) application which uses .Net Core 5 and RabbitMQ, mandatorily with the MassTransit nuget package.
You will need to use docker to setup a RabbitMQ server with Management Console.
Setup Exhanges of all 4 types (direct, fanout, topic, headers) with Queres bound to them.
- 1 Asp.Net Core 5 Worker service, being the "producer"
- 1 Asp.Net Core 5 Worker service, being the "consumer"
Together they need to send and respectively receive random data (generated and populated into Models), every several milliseconds, in ALL these ways with EACH of the 4 Exchange types:
# publish-subscribe with a positive ACK after 5 milliseconds, thus simulating that a task has been executed
# publish-subscribe with automatic ACK
# publish-subscribe with an immediate positive ACK, but some randomly generated negative ACK as well (and show these negatives on the console)
# publish-subscribe with an immediate positive ACK, but some randomly generated rejects as well (and show these rejects on the console.
Implement all these 5 ways of sending, and their random data generations, within 5 Tasks (thus in 5 different threads) so that all of them execute concurrently.
Display each message, and it's contents, on the console, immediately upon sending it to RabbitMQ. Also display the received messages, with their contents, on the console, in the receiver callbacks. Each of the 5 ways of sending, in a different color on the console.
Run each thread for 90 seconds, and count the sent messages of each way of sending, independently, and show the results on the console. Do the same with the received messages of each way of sending, on the console of the consumer.
1 - Visual Studio 2019 v16.10.0 Solution with the 2 Asp.Net Core 5 Worker Services
2 - Docker command to create and setup the RabbitMQ server
3 - Detailed written instructions for the RabbitMQ Exchanges, Queues and Bindings
Acceptance criteria: develop according to these requirements, and mandatorily use MassTransit for all RabbitMQ interaction.
Please place your bid.
Budget USD 25 (fee included).