Table of Contents

Summary

TL;DR

Monolithic architectures are a more traditional approach towards application development, where the entire application is built as a single, indivisible unit. For a monolithic, all components of the application: being the business logic, user interfaces, data access layers, are tightly coupled and run in a single process.

Key Characteristics

  1. Single Codebase: The entire application is developed using a single codebase, with a single stack for development.
  2. Single Deployment: Changes to any part of the application will cause it to fail unless redeployed.
  3. Scalability: Scalability is achievable, but when adding more resources to a monolithic application, readability and maintainability steadily decreases coupled with the fact that you would need to redeploy every time.

Pros and Cons of Monolithic Architecture

Companies have found some varying benefits from using monolithic architectures, but its dependent on many factors. One of the pros of using the monolithic architecture is its fast development speed; as there is only a singular codebase to work on, there is more considerations towards building a product that can ship rather than taking into account scalability, design flaws, or maintainability. Here are some potential cons:

Cons of Monolithic Architectures

  1. Scalability Issues
  2. Reliability Issues
  3. Maintainability Issues
  4. Barrier to Technological Adoption
  5. Constant Redeployment
  6. Bugs Hidden Within Deeper Implementations

What is Monolithic?

Developing with Monolithic Design in Mind

Migrating from Monolithic to Microservice


Extensions ✨