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
