- firstly we are about to re-architect the message dispatching for persistent messages, so having something with a simple interface (Collections) would enable some rapid prototyping
- It's got to be compatible with the Apache licence - ruling out some well known alternatives
- I wanted to see if I could provide a faster persistent engine than the current ones we use in ActiveMQ.
Persisted messages are generally read in insertion order, but also need to be accessed by their id so they can be deleted (message acknowledgements can be received out of order - e.g. for Queues). So using a mixture of persistent Maps and Lists from the developers view is ideal.
The Kaha persistence adaptor is available in the latest snapshot of ActiveMQ, though we are not going to push this as a new feature until the 4.1 release. But if you're brave enough - give it a try :)