Saturday, May 22, 2021

Monolithic vs Microservices

👉    Monolithic Architecture.

*    Monolithic architecture was there before Microservices came into action. 

*    All functionalities or services are implemented or deployed into a single server or the software application.

*    For example lets consider a shopping platform.


👉    Characteristics of Monolithic Architecture.

*    Developed and deployed as a single unit.

*    Overwhelmingly complex.

*    To update a service need to redeploy the entire server/application.

👉    Problems in Monolithic Architecture.

*    Complexity of the architecture.

*    Unable to scale the server/application.

*    Non-reliable.

👉    Messaging in Microservice Architecture.

*    Function calls/language level methods.

*    SOAP and WS with HTTP, JMS.

👉    Microservice Architecture.

*    Developing a single application as a suite of fine-grained and independent services which runs on its own process, developed and deployed independently.

*    For example consider the same shopping platform application.



👉    Characteristics of Microservice Architecture.

*    Single responsibility.

*    Independent development and deployment.

*    Focus on the scope of microservice.

👉    Messaging in Microservice Architecture.

*    Simple and lightweight messaging mechanism.

*    Both synchronous and asynchronous messaging.

*    Message formats are JSON, XML.

*    Service contracts like Swagger, RAML, Thrift.

👉    Integrating Microservice Architecture.

*    SOA/web services use ESB

*    But in microservices it is different.

      1.    Point to Point style.


      2.    API Gateway Style.

      3.    Message Broker.


👉    Governance in Microservice Architecture.

*    No centralized governance in microservices.

*    Make their own decisions about design and implementation.

👉    Service Registry in Microservice Architecture.

*    Holds the microservice instances and their locations.

👉    Service Discovery in Microservice Architecture.

*    Find the available microservices and their corresponding locations.

*    There are two types:
    1.    Client side discovery.
    2.    Server side discovery.

👉    Deployment in Microservice Architecture.

*    Ability to deploy/undeployed independent of other microservices.

*    Example : Docker.

👉    Security in Microservice Architecture.

*    Security component implemented at each microservice level.

*    OAuth : Access token with no user identification information.

*    OpenID connect : ID token with user infromation.

*    Microservices do  not support transactions due to complexity.


No comments:

Post a Comment

Monolithic vs Microservices

👉     Monolithic Architecture. *     Monolithic architecture was there before Microservices came into action.  *     All functionalities or...