Description of the message bus we use in the Bitmagasin system
The message bus solution is currently being established, see BITMAG-52@jira
Choice of message bus
This is the rationale behind our choice of ActiveMQ as messaging software
Message bus requirements
The requirements our message bus solution needs to satisfy
- Handling of timeouts would be nice
- High flexibility
- Low complexity
- Message payload should be signed
- Messages are exchanged asynchronously
- Persistent message queues and topics
- The bus must be usable "out of the box", programming should not be necessary on the server side
- To ensure robustness, the messaging system should support distribution among multiple physically independent servers
- Topics as well as simple queues should be supported
- Transformation of data between sender and consumer is not needed
- We need broad API support from common languages - especially Java and C
- We need SSL support on the wire protocol