Chapter 1. Understanding Microservices
If you are new to microservices, this chapter will give you a solid grounding on what they are, where they shine, and where they present challenges. I’ll also cover the ecosystem that tends to go along with microservices—the technologies that enable this architecture.
Let’s start by defining what microservices are.
Microservices are independently releasable services that are modeled around a business domain.1
Modeling microservices around a business domain gives a closer alignment between business and IT, and means that most changes are within a microservice, so your team has complete control over making that change. In other words, costly coordination can be avoided.
Having independently releasable services means that as soon as a change is ready, you can release it. Typically, this happens multiple times a day.
The separation between these services gives teams more options: they can be more flexible in terms of the technology used, they can build services with different levels of robustness, and they can scale them independently. This flexibility also makes change easier, allowing engineers to solve problems as they hit them.
All of these aspects mean microservices give teams the capability to move fast.
Defining the Microservices Architectural Style
Let’s go further than a definition of what microservices are, and look at a definition of the microservices architectural style. A microservice architecture is made up of lots of microservices, ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access