Pre-release notification and feedback request

Hi all,

Since you are an Axon Framework user, we hope you are satisfied with the performance and scalability improvements that it gives you. We are now about to share a secret with you, and would like you to hear about this great news ahead of the public, because we value your opinion!

Recently we have started on the development of a new product for Axon users: the Axon Event Store Server. It provides a number of exciting features that makes it simpler and faster to use event sourcing. It may appear that it’s just another implementation of the Event Store interface you probably already know, but there is much more to it.

What is the Axon Event Store Server?

The Axon Event Store Server is a standalone product. It is not only used to store the events in a secure way, but it also acts as the Event Bus between components. Components listening to events simply connect to the Event Store server, and they automatically receive all events. Delivery is fast and guaranteed. This will greatly reduce the infrastructural complexity of an Axon based distributed system, while improving performance.

It’s also much faster. Benchmarks indicate that it is over 10 times faster than a MySQL based event store! The reason is simple, the Event Store Server is built from the ground up to work with streams of events. The indexes also work differently, focusing on extremely fast appending as well as efficient sequential reading of events.

We would love to hear from you what you think of this concept! If you want to know more about the standalone Axon Event Store Server, or have some suggestions about the features it should have, please drop me a note to schedule a call.

Looking forward to hearing from you!

Kind regards,

Allard Buijze - Software Architect - -
Mobile: +31 6 3473 9989 Office: +31 20 486 20 36 Fax: +31 20 475 08 28
Address: Rijnsburgstraat 9-11 1059 AT - Amsterdam - The Netherlands


trifork LinkedIn Network Twitter Facebook Fan Page Blog

I think a key feature is multitenancy support.
I imagine something like: hey Axon Event Store I’m tenant X store my events, hey Axon Event Store I’m tenant X give me my events.
I’d like to keep (or choose to let) the tenant outside the domain, the commands, the events, the listeners etc…
I already have a multitenant application where the tenant is hidden behind TransactionManagers/ConnectionProviders/etc implementations, even the application layer doesn’t knows the tenant apart from a little thin layer where the concrete implementations are instantiated.

Hi Andrea,

thanks for the feedback. This feature request has been mentioned before, so it made it to the product backlog.
It’s likely to be implemented using “logical databases”. In your case, you could use a ‘database’ (it will probably be called differently) for each tenant.



Such an Event Store Server would be great!
My main fear about Axon was the lack of storage based on event store specificities

What would be nice:

  • (As already asked) multi-tenancy
  • Simple to use but complete “plug&replay” API (like “my application is live, but now I need some special statistics of this precise period of time”)
  • Simple backup tooling (as it’s appending only, it could be easy to have some easy-made incremental backup)
  • Provide a good enough serialization mecanism (or grant control on it)
  • Provide some tools for migration between actual solution and this promising AxEES :slight_smile:
  • And a last (probably questionnable) nice to have: the possibility to rewrite some past events if really required

Looking forward to test it!

Have a nice week,

Christophe Porté
Software architect

Hi Allard,

I think that also the possibility to go from a “barebone Axon framework application” to a Axon Event Store Server should be thought of from the beginning, so that people that wants to start of with Axon framework only and later realize they need the power of the Axon Event Store Server should be able to upgrade/migrate in an easy way.