Skip to main content

Command Palette

Search for a command to run...

Monolithic Architecture

Published
•2 min read•View as Markdown

what is monolithic architecture

Monolithic applications are created as a single massive codebase that contains all components of a project like- frontend, backend, and configuration. As the word "mono" itself says single. monolith applications are faster to create, and deploy in comparison to the application created using a microservices architecture. On the other hand, monoliths may suffer from a lack of scalability and the limitations of maintenance of a gigantic code base as it grows when the application expands in size.

Disadvantages-

  • Difficult to manage as it grows in size with time.

  • for a very small change in the application, we have to redeploy the whole code base.

  • for a member who joins the team, he/she has to understand the whole codebase even if the task is related to the single functionality of the application.

  • even if a single is facing an issue like load/traffic, then we need to redeploy the instance of entire applications on multiple servers which is very inefficient and takes a lot of resources unnecessarily. since horizontal scaling is not feasible in the monolith.

  • it is not very reliable, a single bug in any module crash all the other modules of the application because all the modules are interdependent that's why your will crash.

Advantages-

  • simple to develop.

  • easier to deploy.

  • single security management or we can say centralized security management.

  • the problem of network latency is less in comparison to microservices.

  • developers need not learn many applications they have to focus on only one.

  • testing is easier as here we have to test the single code base.

More from this blog

shriyash's blog

7 posts