I have a large number of different device types each of which can emit a variety of different types of messages.
I then have consumers of these messages each responsible for handling several types of messages.
I need the messaging distributor to handle meet the following requirements
- Able to route a message of a specific type/topic to any interested consumers
- Sending/receiving messages in multiple languages including .NET and nodejs
- Guaranteed delivery
- High availability options on the messaging components.
- Able to load balance between multiple consumers of the same type
- Good documentation
- Approx 100-150 different types of events
- At least 3 consumers
- At least 8 producers
- Approx 500 messages per second to begin
- Should be scalable to high load (in the medium term around 20,000 messages per second)