This is a console application that will create an exchange and queue for you, and allow you to send messages in bulk with message delivery status tracking.
First we'll look at the following design decision you will likely encounter when performing reliable bulk send operations.
Performance/Duplication Trade-Off
When sending messages in a bulk operation you want both decent performance and want best effort reliability - you have two conflicting concerns. When I say reliability I meant that you need every message to get delivered and you ideally want to avoid message duplication.