Transitioning the application to microservices
Microservices is a modern approach to software development that many companies are adopting. However, transitioning an existing system takes more work. Many variables are involved, such as the microservices’ parallel development and the current system’s maintenance. We must decide whether to overhaul the entire system or gradually replace or rewrite it with a new one (Strangler Fig pattern by Martin Fowler). Should we start transitioning the code or the database? It is a hard decision with many options. We need to select the best one that fits our needs and situation. To explore this topic further, I recommend reading Monolith to Microservices: Evolutionary Patterns to Transform Your Monolith by Sam Newman.
For learning purposes, we will transition the entire system at once. It will give a glimpse of the transition process. Then, let’s move on to our case study. The stakeholders want to talk to us; we are becoming...