Overview
This course explores various use-cases for synchronous vs. asynchronous microservice architectures, their advantages and disadvantages, scalability, availability, and observability differences. It covers patterns like CQRS, Event Sourcing, and Data Busses, and provides insights on how to identify when to migrate from one architecture to another. The course teaches about asynchronous message patterns, messaging technologies, delivery guarantees, error handling, and how to gradually evolve towards an asynchronous model. The intended audience for this course includes software developers, architects, and engineers working with microservices and interested in understanding and implementing asynchronous distributed systems.
Syllabus
Intro
Synchronous vs Asynchronous System
Why go from one to the other?
Trading consistency for availability
CAP Theorem in microservices
Messages and Queues
Asynchronous Message Patterns
Fire and Forget (Notification)
Request/Response
Distributed Log
Command Query Responsibility Segregat
Event Sourcing
Delivery Guarantees
Transactional Outbox
Successful Saga
Compensatory Transactions
Messaging Technologies
Backpressure
Error Handling
Taught by
NDC Conferences