Chapter 13. Refactoring to microservices

This chapter covers

  • When to migrate a monolithic application to a microservice architecture
  • Why using an incremental approach is essential when refactoring a monolithic application to microservices
  • Implementing new features as services
  • Extracting services from the monolith
  • Integrating a service and the monolith

I hope that this book has given you a good understanding of the microservice architecture, its benefits and drawbacks, and when to use it. There is, however, a fairly good chance you’re working on a large, complex monolithic application. Your daily experience of developing and deploying your application is slow and painful. Microservices, which appear like a good fit for your application, seem like distant nirvana. Like Mary and the rest of the FTGO development team, you’re wondering how on earth you can adopt the microservice architecture?

13.1. Overview of refactoring to microservices

13.2. Strategies for refactoring a monolith to microservices

13.3. Designing how the service and the monolith collaborate

13.4. Implementing a new feature as a service: handling misdelivered orders

13.5. Breaking apart the monolith: extracting delivery management