Messaging and Microservice Patterns
Message brokers compared, reliable messaging, event-driven patterns (outbox, saga, CQRS, event sourcing), service discovery and meshes, operating microservices, and observability with SLOs.
6 lessons1 h 15 minAdvanced
What you'll learn
0 of 6 lessons complete
- Message brokers comparedStart
- Reliable messaging: retries, dead letters, ordering and the outbox
- Event-driven architecture: sagas, CQRS and event sourcing
- Service discovery, service mesh and sidecars
- Operating microservices: config, secrets, feature flags, tracing and logging
- Observability: metrics, SLIs, SLOs and alerting
Who this is for and what you will be able to do
Who this is for
Engineers building or running services that communicate asynchronously and want the patterns that keep them correct and observable.
After this course you will be able to
- Choose between Kafka, RabbitMQ, SQS, Pub/Sub and Pulsar for a use case
- Build reliable messaging with retries, dead letter queues, idempotency and the outbox pattern
- Apply sagas, CQRS and event sourcing, and know their costs
- Explain service discovery, sidecars and service meshes
- Operate services with config, secrets, feature flags, tracing and logging
- Define SLIs, SLOs and error budgets and build useful dashboards and alerts
Topics it coversMicroservicesCQRSEvent Driven ArchitectureIdempotencyKafkaObservabilityTime and OrderingAll topics
How a lesson works
Interactive diagram
See how each component connects, then run a request through it.
Plain-words toggle
Switch between the technical explanation and a plain-language one.
Practice design
Change a design of your own in the builder and see how it holds up.
Quiz and exercise
Test your understanding before moving on.
Go deeper
These lessons are written from scratch. The books below are excellent next reads.
- Designing Data-Intensive Applicationsby Martin Kleppmannmessaging, streams and consistency
- Microservices Patternsby Chris Richardsonsagas, outbox, CQRS
- Site Reliability Engineeringby Googlefree online; SLOs and error budgets