liveBook · Manning

Hybrid approach

As explained in Bootstrapping Microservices, Second Edition: With Docker, Kubernetes, GitHub Actions, and Terraform

The hybrid approach is an application architecture that retains a monolith for most functionality while surrounding it with microservices where their flexibility or scalability is beneficial.

The hybrid approach keeps most functionality in a monolith while surrounding it with microservices for jobs that need greater performance, scalability, flexibility, or fault tolerance. It offers monolithic simplicity for the main codebase without rejecting targeted service extraction. section 12.7.3 section 12.11

Use the architecture to make pragmatic boundaries around specialized work:

  • Keep most application code in the monolith when simplicity and ease of maintenance matter most. section 12.7.3
  • Move individual features to microservices when their performance, scalability, flexibility, or fault-tolerance requirements justify the added complexity. section 12.7.3
  • Refactor through small, well-tested steps rather than attempting an immediate migration to a complete microservices architecture. section 12.11
  • Protect each accessible gateway with authentication and authorization as services are added. section 12.11

Video application

A video application can keep its main functionality in the monolith while delegating thumbnail computation and machine-learning-based video subject detection to microservices. These jobs remain separate because they are particularly sensitive to performance and scalability requirements. section 12.7.3

Figure 12.29 The hybrid approach: a monolith surrounded by a “constellation” of helper microservices

A diagram of the monolith at the center, surrounded by a constellation of helper microservices, reinforces the architecture’s boundary and division of responsibilities. section 12.7.3

How Bootstrapping Microservices, Second Edition: With Docker, Kubernetes, GitHub Actions, and Terraform covers it

How deep it goes
Defines the architecture, explains trade-offs and migration rationale, and stops short of implementation commands or deployment mechanics.
Examples
Uses video thumbnail computation and machine-learning-based subject detection as delegated microservice jobs.
What you can do after
Evaluate which features merit microservice boundaries while retaining a simpler monolith for the remaining application.
How it connects
Connects monoliths with microservices, scalability, performance, flexibility, fault tolerance, security, and incremental refactoring.

Also explained in

Compare how 5 books explain hybrid approach →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Bootstrapping Microservices, Second Edition: With Docker, Kubernetes, GitHub Actions, and Terraform. The section links point to the parts of the book it draws on.