Using sagas to maintain data consistency in a microservice architecture by Chris Richardson
Please subscribe to our YouTube channel @ https://bit.ly/devoxx-youtube Like us on Facebook @ / devoxxcom Follow us on Twitter @ / devoxx The microservice architecture structures an application as a set of loosely coupled, collaborating services. Maintaining data consistency is challenging since each service has its own database to ensure loose coupling. To make matters worse, for a variety of reasons distributed transactions using JTA are not an option for modern applications. In this talk we describe an alternative transaction model known as a saga. You will learn about the benefits and drawbacks of using sagas. We describe how sagas are eventually consistent rather than ACID and what this means for developers. You will learn how to design and implement sagas in a Java application. Chris Richardson is a developer and architect. He is the author of POJOs in Action, which describes how to build enterprise Java applications with frameworks such as Spring and Hibernate. Chris was also the founder of the original CloudFoundry.com, an early Java PaaS for Amazon EC2. Today, he is a recognized thought leader in microservices. Chris is the creator of http://microservices.io, a website describing how to develop and deploy microservices. He provides microservices consulting and training and is working on his third startup http://eventuate.io, an application platform for developing microservices.

Microservices for the Masses with Spring Boot, JHipster, and JWT by Matt Raible

Principles Of Microservices by Sam Newman

Performance oriented Spring Data JPA & Hibernate by Maciej Walkowiak

Not Just Events: Developing Asynchronous Microservices • Chris Richardson • GOTO 2019

The Many Meanings of Event-Driven Architecture • Martin Fowler • GOTO 2017

Data Consistency in Microservices Architecture (Grygoriy Gonchar)

The New Java Best Practices by Stephen Colebourne

Kubernetes Zero to Hero: The Complete Beginner’s Guide (2025 Edition)

System Design Explained: APIs, Databases, Caching, CDNs, Load Balancing & Production Infra

Microservices • Martin Fowler • GOTO 2014

How Netflix Uses Java - 2026 Edition

When To Use Microservices (And When Not To!) • Sam Newman & Martin Fowler • GOTO 2020

Balancing Coupling in Software Design - Vlad Khononov - DDD Europe 2023

Microservices Data Patterns: CQRS & Event Sourcing by Edson Yanaga

System Design Course – APIs, Databases, Caching, CDNs, Load Balancing & Production Infra

All our aggregates are wrong | Mauro Servienti

Managing Data in Microservices

Authentication as a Microservice

Distributed Sagas: A Protocol for Coordinating Microservices - Caitie McCaffrey - JOTB17

