Grokking Microservices Design Patterns
Vote

0% completed

​

Embrace the Future of Software Architecture

Technology Keeps Changing

The Power of Design Patterns

Beyond This Course

Final Thoughts

This is the end of the course. If you have not taken the final exam yet, it is the chapter just before this one. It is the fastest way to find the patterns you still need to reread. You now have a set of patterns you can apply to real systems. The Strangler Fig Pattern replaces a legacy system one piece at a time. An API Gateway gives clients one entry point instead of many service addresses. The Circuit Breaker Pattern stops calls to a service that is already failing, so the caller returns an error at once instead of waiting. Sagas, the Outbox Pattern and Event Sourcing keep data correct when each service owns its own private database.

What do these patterns have in common, and why are they worth your time?

Technology Keeps Changing

Technology keeps changing. To stay useful in your job, you have to keep learning. Microservices are not a short lived trend. They changed how teams design, build and run software systems. That change brings its own problems. The patterns in this course give you a way to handle them. The next figure lists common symptoms and the pattern to start with for each one.

A lookup from symptom to pattern. When a system behaves like the left column, the right column names where to start reading.
A lookup from symptom to pattern. When a system behaves like the left column, the right column names where to start reading.

The Power of Design Patterns

In essence, design patterns are tried and tested solutions to common problems. They represent the collective experience of developers and architects who have solved the same problems before. Learning these patterns gives you more than theory. It gives you tools you can use in your next design review or your next outage. The next figure shows how several of these patterns work together in one system.

The patterns of this course working together in one system. Most real systems use several at once, one layer at a time, rather than any single pattern on its own.
The patterns of this course working together in one system. Most real systems use several at once, one layer at a time, rather than any single pattern on its own.

Beyond This Course

This course does not cover every microservices pattern. There are many more, and new ones keep appearing. Keep reading, and try each new pattern on a small project before you use it at work. What you learned here is a starting point. Add to it as you go.

Final Thoughts

In conclusion, this course isn't just about learning the details of microservices. It's about adopting a new way of thinking about software architecture. It is about having a vocabulary for the trade-offs you will be asked to make. Most of all, it gives you a way to judge a design before you build it.

Keep applying these patterns, and keep checking what each one costs as well as what it gives you.

Thank you for being a part of this course!

Reading Progress

0%


Vote for new content

On This Page

Technology Keeps Changing

The Power of Design Patterns

Beyond This Course

Final Thoughts