Microservice Patterns | Design Patterns | Composition Autonomy
img
Home > Design Patterns > Composition Autonomy

Composition Autonomy (Erl, Naserpour)

How can microservice compositions be implemented to minimize loss of autonomy?

Composition Autonomy

Problem

Microservices responsible for composition logic naturally lose autonomy when delegating processing tasks to composed microservices.

Solution

All composition participants can be isolated to maximize the autonomy of the composition as a whole.

Application

Services, components or microservices that need to be part of the composition are redundantly implemented within the composing microservice’s isolated deployment environment.

The microservices, services and components participating in a composition are deployed within an isolated environment together with the composing microservice, so as to give the composition as a whole a high level of autonomy.

Composition Autonomy: By grouping the microservices and components into a dedicated deployment environment, the collective autonomy is maximized.

By grouping the microservices and components into a dedicated deployment environment, the collective autonomy is maximized.

This pattern can be applied in conjunction with the Redundant Implementation, as explained in the complete pattern description.

Module 10: Advanced Microservice Architecture & Containerization.

This pattern is covered in Module 10: Advanced Microservice Architecture & Containerization..

For more information regarding microservice and containerization courses and accreditation,
visit the Microservice Architect Certification program page..