1. About Microservices Flashcards
What is the aim of microservices architecture?
To solve the global challenges that today’s businesses face, as well as promote patterns of distribution, agility and scalability needed in today’s world.
What does the microservices architecture promise?
A more agile framework that can be extended into a cloud-native world much easier than either monolithic applications or SOA-based (service-oriented application) architecture.
What protocol lies at the heart of microservices?
HyperText Transfer Protocol (HTML)
What is microservices architecture about at its core?
Applying the concept of decomposition to systems.
What does decomposition mean?
It means breaking a software problem into smaller pieces that are easier to understand and solve.
What does system decomposition mean?
It means breaking a system into smaller units that make it easier to solve a series of problems.
What concept does microservices embrace to handle all communications, what does this mean, and what does this allow for?
Protocol-aware heterogeneous interoperability. This means that every call within the service boundaries is solved via REST, which allows microservices to be implemented in a true polyglot fashion as long as the language provides some mechanism for creating, responding to, and executing against RESTful endpoints.
In a pure microservices architecture, what can be said about giving/receiving calls to/from units of work, and what does this bring to the table?
Each unit of work can be called from any other unit of work within the system. This provides a lot of flexibility, but can also lead to headaches, and often hybrid architectures are leveraged to solve these concerns.
What concept does microservices embrace to handle all communications, and what does this mean?
Protocol-aware heterogeneous interoperability. This means that every call within the service boundaries is solved via REST.
What is one of the biggest costs to pay, especially early in the process?
Complexity.
When should you “walk lightly” with microservices?
When your churn to production is not a simple case of packaging and deployment but instead a complicated process unless you are willing to update your process.
What will microservices entail if your processes and procedures require a lot of “gates” in the software lifecycle?
A dramatic increase in the costs of time and money as you move from a few deployed artefacts to many. In addition to the deployment complexity, determining where all the code lives and operates in a microservices architecture can increase the complexity and costs associated with it.
When should you “walk lightly” with microservices?
When your churn to production is not a simple case of packaging and deployment, but instead a complicated process.
What will microservices entail if your processes and procedures require a lot of “gates” in the software lifecycle?
A dramatic increase in the costs of time and money as you move from a few deployed artefacts to many. In addition to the deployment complexity, determining where all the code lives and operates in a microservices architecture can increase the complexity and costs associated with it.
What does distribution tax mean in the context of microservices?
Another cost you pay with microservices.
As you build a microservices architecture out, there is a dramatic increase in network communications between the individual services. This increases the total latency of calls across the network as a whole.