In this article we will understand why implement modular monolithic instead of monolithic and microservice architecture.Lets understand pros and cons of monolithic and microservice before going to deep dive into modular monolithic.
Monolithic Architecture :
Almost 80% of existing applications developed in monolithic architecture.this is very straightforward approach to architecting your application.in monolithic architecture application is a single block of code,internally splitted into multiple concerns like Presentation layer,Businees layer,Data Layer.
Microservices :
Microservices architecture where application divided into various components.each components serving a particular purpose.these components are called microservices.each components developed and deployed seperately with different hosts and servers.
Microservices definitely best architecture you can implement for large scale application.
Disadvantages of Microservices
- Scale 10 applications instead of one.
- Secure 10 API endpoints instead of one.
- 10 Git repositories instead of one.
- Deploy 10 application instead of one.
Modular Monolithic Architecture
A Modular monolithic architecture is a software design pattern that combine the benefit of monolithic architecture.this approach structure your application in way of support seperation of concern. Modular monolithic is between monolithic and microservice architecture.it build application as a single unit but organised as module wise.
Benefits of Modular Architecture in ASP.NET Core
- Clear Separation of Concerns
- Easily Scalable
- Lower complexity compared to Microservices
- Low operational / deployment costs.
- Reusability
- Organized Dependencies
Modular monolithic architecture project structure in donet core