Microservice Patterns | Design Patterns | Rich Container
img
Home > Design Patterns > Rich Container

Rich Container (Erl, Naserpour)

How can the features and functions of a container be extended to support a broader range of requirements?

Rich Container

Problem

A regular container provides essential but very basic functions. Specifically, it supports commands to be stopped, started, paused and resumed. Applications and services hosted in containers can require many more features, making the usage of regular containers insufficient.

Solution

The application or service is deployed in a container with a wide range of enhanced features and functionality.

Application

An advanced container engine is used to enable containers to deliver a number of commonly required features, such as health status monitoring, threads, stack, lock contention, network message statistics and configuration information.

The microservice is deployed in a rich container that can expose a set of additional features, including service-specific monitoring metrics, microservice health status, threads, stack, lock contention, network message statistics and configuration information.

Rich Container: Microservice A is deployed inside a rich container that provides extra features and can provide additional information about the microservice.

Microservice A is deployed inside a rich container that provides extra features and can provide additional information about the microservice.

The container, as well as Service A that is deployed inside the container, can be stopped, started, paused and resumed. In addition, access to extended features is granted via the extended or advanced capabilities and features offered by the container engine, including service logs and monitoring information for monitoring the service status and health.

This pattern is applied using an advanced container engine, 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..