Wednesday 

Room 1 - Level 3 

13:40 - 14:40 

(UTC±00

Talk (60 min)

Consistency and Agreements in Distributed Systems

In a monolith, achieving consistency is easy - just use a transaction! In a distributed world, where we mix legacy and greenfield, getting systems to agree becomes quite a bit more complex.

Architecture
Microservices

We have different databases, different communication methods, caches, and more. How can we get anything to agree on the state of anything?

Building reliable communication and agreements between systems is possible - but it requires careful design and application of well-established patterns.

In this session, we'll look at how to implement various consistency and transactional patterns, to support both real-time and async updates. We'll dive in to the inbox and outbox patterns to support transactional messaging. We'll also look at long-running transaction patterns such as sagas and process managers to manage agreements between systems. Finally, we'll look at a full working example that crosses databases, APIs, messaging, and more.

Jimmy Bogard

Jimmy is the creator and maintainer of the popular OSS libraries AutoMapper and MediatR, and the originator of Vertical Slice Architecture. Jimmy is an independent software consultant based in Austin, TX. Jimmy has received the "Microsoft Most Valuable Professional" (MVP) award every year since 2009.