The monolith versus microservices architecture debate has been around for years. Some claim that a monolith architecture is the best option if we're working from scratch. Others believe that the advantages of microservices outweigh the initial hassle of creating multiple servers.
In this tutorial, we'll be discussing these architectures in detail, and see how we can decide between them for developing our software application.
To understand the primary differences between these architectures, it is imperative that we have at least a basic understanding of coupling
and cohesion
. We should also get to know how these concepts should be incorporated to improve software. Understanding the balance between the two ensures stability in our systems.
Coupling:
This refers to the inter-dependency between various modules of a single application. It deals with the inter-modular dependencies.
Cohesion:
Cohesion
is the measure of the degree to which the elements of a single module are functionally related. This is the intra-module inter-dependency.
The general recommendation is to keep coupling low, while cohesion should be high to ensure stability.
Now that we've reviewed these concepts, let's dive into the actual debate between proprietors of monolith and microservices architectures.
Access all course materials today
The rest of this tutorial's contents are only available for premium members. Please explore your options at the link below.