Event Sourcing

Event Sourcing is a pattern for data storage, where instead of storing the current state of any entity, all past changes to that state are stored. With Axon Framework, you can implement Event Sourcing with minimal boilerplate code, giving you the benefits of Event Sourcing, without the hassle.

Introducing the Axon Framework IntelliJ plugin

By Mitchell Herrijgers

    5 min

|

    Mar 11, 2022

AxonIQ is introducing an IntelliJ plugin to make developing applications with Axon Framework and Axon Server even easier!

AxonFramework and PostgreSQL without TOAST

By Yvonne Ceelie

    2 min

|

    Mar 01, 2022

When using AxonFramework together with PostgreSQL, you will find out that PostgreSQL uses something that is called TOAST (The Oversized Attribute Storage Technique).

It means that PostgreSQL uses a fixed page size of 8 KB and does not allow for tuples to use multiple pages; Postgres will compress the data. You can find more info about TOAST in the PostgreSQL wiki.  

Sagas in practice

By Yvonne Ceelie

    8 min

|

    Jun 18, 2021

This blog is a how-to implement a Saga with Axon and Spring Boot. Saga’s are a powerful concept but, you need to think about other options before implementing a Saga. You’ll have to keep in mind that the Saga should only orchestrate the process. If you conclude a Saga is the best option, this blog provides some good practices to help you get started.

Revisiting Axon Server in Containers

By Bert Laverman

    16 min

|

    May 20, 2021

In my previous blog, I spent just a little bit of text on the challenges of using a single StatefulSet scaled to the number of nodes we want in the cluster. Also, I completely skipped the subject of using Helm to manage the deployment. Both subjects do merit more attention, so let’s do just that.

Distilling the CQRS/ES Capability

By Vijay Nair

    4 min

|

    Apr 20, 2021

CQRS/ES are patterns and to be more specific they are Application Design patterns and their implementation spans across 3 main Architectural areas: structural and continuity, operational and extensibility, and cross-cutting and usability. To help pinpoint the exact implementation areas, let us look at two terms commonly used in Enterprise Architecture - Capabilities and Capability Maps.

Dispelling the Eventual Consistency FUD when using Event Sourcing

By Vijay Nair

    6 min

|

    Mar 24, 2021

In the CQRS/ES space, we are equally guilty of not countering the FUD with enough examples and literature that gives relevant data points for folks wanting to adopt these patterns. What if I told you that your systems built with CQRS/ES are as transactionally consistent as systems built without these patterns using the more formal storage methods! Well, let’s walk through an example actually to prove it.

Protect sensitive data in an Event-Sourced Application

By Yvonne Ceelie

    6 min

|

    Feb 24, 2021

In message-driven systems, messages flow in a lot of directions.The right to data erasure is a requirement that is common in security laws. At first glance, the right to erasure seems to be contradictory to event sourcing. A solution to overcome this problem is crypto shredding. AxonIQ’s Data Protection Module takes a declarative approach to encrypting sensitive data. 

Event Store Migration and Conversion - How to move or transform events in bulk

By Bert Laverman

    11 min

|

    Dec 21, 2020

There are several situations where you might want to copy or move the contents of your Event Store, not just to build a view model, but to either move events to a new system or perform large-scale conversions on the contents. In this blog, we will look at some of the scenarios and the different approaches available.

From Model to Code - Zoom Out

By Sara Torrey   &   Ivan Dugalic

    6 min

|

    Dec 14, 2020

In the previous blog post, this one will help to visualize how multiple software systems fit together within the bounds of an enterprise.

Split & Merge Fundamentals

By Milan Savić   &   Sara Pellegrini

    7 min

|

    Nov 26, 2020

Nowadays, systems must be designed to handle loads that change quickly and dynamically. In these situations, it is expected that our applications adapt accordingly. Axon is capable of parallel and distributed event processing. It uses segmentation to separate the event stream and then processes those segments in different threads, which may be located in different JVM; therefore, achieving distributed processing.