Splitting a Monolithic Application Into Services

151

Microservices-based architecture is an emerging trend in software development. It is the result of efforts to make enterprise application code more flexible and easily deployable. Current applications are typically layered based on technology. Teams that are structured around this model also end up having segregated domain expertise. Any change requires coordination between different teams, increasing the time to ship a feature. The final deliverable becomes a monolithic application which bundles all these layers together.

This article attempts to highlight the issues with a monolithic application development model and the benefits of moving to a microservices-based architecture. It then describes a possible approach to transform a monolithic application into a more nimble service-based application. The article concludes by proposing how a production model could look in the new architecture.

Read more at DZone