Events to the rescue: solving distributed data problems in a microservice architecture
Not that long ago I gave a short presentation at the Solace EDA summit 2021 on the role of events in a microservice architecture. To fit the theme of the conference the focus is on events. It’s important to remember, however, that events are just one particular kind of asynchronous messaging in a microservice architecture. Asynchronous request/response is equally as important, e.g. orchestration-based sagas.
To deliver a large complex application rapidly, frequently and reliably, you often must use the microservice architecture. The microservice architecture is an architectural style that structures the application as a collection of loosely coupled services. One challenge with using microservices is that in order to be loosely coupled each service has its own private database. As a result, implementing transactions and queries that span services is no longer straightforward.
In this presentation, you will learn how event-driven microservices address this challenge. I describe how to use sagas, which is an asynchronous messaging-based pattern, to implement transactions that span services. You will learn how to implement queries that span services using the CQRS pattern, which maintain easily queryable replicas using events.