Table of Content
April 10, 2024
Monolithic architecture is a traditional approach to software design, where an application is built as a single, unified unit. This method integrates different components of the application, like the user interface, business logic, and data access layer, into a closely-knit package that is deployed as one entity.
Microservices architecture breaks down the application into smaller, independent services, each responsible for a specific function or feature.
For example, in an e-commerce application, one service might handle user authentication, another might manage products, and another might handle user notifications or emailing.
These services are loosely connected and communicate over a network, often using lightweight protocols like HTTP or messaging queues.
A serverless architecture — also known as serverless computing or function as a service (FAAS), this software design pattern involves hosting our function (which is a part of the microservice's responsibility) on a third-party platform such as AWS Lambda functions, Azure functions, or Firebase cloud functions. This architecture removes the necessity for developers to manage server software and hardware, as the third-party service handles this automatically.
As mentioned, the responsibility of a single microservice is divided among multiple functions, each of which can be invoked and scaled independently.