liveBook · Manning

Microservices-first approach

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

An application-development approach in which an application is designed and built as microservices from its inception rather than converted from a monolith.

A microservices-first approach designs and builds an application as microservices from the beginning instead of converting a dependent monolith later. Starting greenfield avoids the added complexity of refactoring legacy code and keeps architectural choices open. section 1.0 section 1.1

Use the approach as a practical path rather than a demand for architectural purity:

  • Start with a minimal working application, learning only enough of each technology to bootstrap it. section 1.1
  • Build incrementally with concrete techniques and a selected toolset, then adapt the recipe as requirements and experience change. section 1.1
  • Treat monoliths, microservices, and hybrid arrangements as positions on a spectrum; move toward smaller services when that improves outcomes for the team and customers. section 1.0 section 1.13

Greenfield video-streaming application

Build a simple but complete video-streaming application from nothing using microservices. The resulting experience helps clarify a possible route for converting an existing monolith, although that conversion remains demanding and dependent on the legacy codebase. section 1.0 section 1.1

Figure 1.7 It’s not just monolith versus microservices: there’s actually a spectrum of possibilities.

Use the spectrum diagram to compare monoliths, hybrid arrangements, and microservices without treating any single position as universally correct. section 1.13

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

How deep it goes
Builds from a minimal application while skimming deep technologies, and stops short of prescribing a perfect or universal implementation.
Examples
Demonstrates the approach through a ground-up video-streaming application and a monolith-to-microservices comparison.
What you can do after
Build a greenfield microservices application and identify a clearer route from an existing monolith toward microservices.
How it connects
Connects microservices with monoliths, greenfield development, refactoring, legacy codebases, cloud infrastructure, and automation.

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.