Migrate From Monolithic To Microservices Using Strangler Pattern

Migrate From Monolithic To Microservices Using Strangler Pattern

There are three steps to transition from a monolithic application to microservices by implementing the Strangler Pattern:

  • Transform
  • Co-Exist
  • Eliminate

No alt text provided for this image

Step 1 – Transform

Create a new parallel site, either in the cloud or the existing environment, but based on modern approaches.

Step 2 – Co-Exist

Leave the existing site where it is for the time being. Redirect from the existing site to the new site, so the functionality is implemented incrementally.

Step 3 – Eliminate

Remove the old functionality from the existing site (or stop maintaining it) as traffic is redirected away from that portion of the old site.


Below are some of the actions required when applying the Strangler Pattern to migrate monolithic applications:

  • Identify the size of the application. Strangler Pattern is not suitable for small systems where the complexity is low and the size is small.
  • Check the system design and compatibility as this pattern cannot be used in systems where requests to the backend system cannot be intercepted and routed.
  • Ensure that the facade does not become a single point of failure or a performance bottleneck.
  • Analyze the current legacy monolithic application to split the application based on functional transactions by considering the code complexity. The complexity factor is crucial for the transformation decision using the Strangler Pattern.
  • Visualize the legacy components in detail and new modern application in a single view to scope both the code bases.
  • Analyze any security threat determinations in the new modern architecture.
  • Identify the legacy monolithic application architecture to discover any functional understanding, isolation of components and separation.
  • Start developing the modern microservices application per the business functional level for isolated components as a service.
  • Include a Strangler facade that can route the functional transactions to legacy or modernized microservices from access channels.
  • The legacy application will be larger in size to handle the more functional transaction than the modern microservices application that will handle only the migrated functionality.
  • The functional transformation will happen incrementally for identified system functions over time to microservices. The modern application will grow larger and handle more functions than the monolithic legacy application.
  • Once all the monolithic functions are transformed into the new microservice application, the transition is complete. All the functions are on the microservices platform, and the monolithic application can now be retired.

要查看或添加评论,请登录

Ahmed El-Sayed的更多文章

  • Open System Architecture

    Open System Architecture

    "Open System Architecture" typically refers to the design and implementation of systems using open standards, open…

  • ChatGPT: Revolutionizing Conversational AI

    ChatGPT: Revolutionizing Conversational AI

    Artificial intelligence (AI) has come a long way in recent years, and one of the most exciting developments in this…

  • Togaf 9.2 Level 1 (Part 1)

    Togaf 9.2 Level 1 (Part 1)

    efore we go in details , we have to know how can we read the open group standards document, you should download the…

    1 条评论
  • Kafka vs RabbitMQ

    Kafka vs RabbitMQ

    What’s the Difference Between a Message Broker and a Publish/Subscribe (Pub/Sub) Messaging System? Message brokers are…

  • What is the strangler pattern and how does it work?

    What is the strangler pattern and how does it work?

    What is the strangler pattern? Picture a motorcycle that works, but could stand to undergo extensive overhauls that…

  • MIGRATING FROM MONOLITH TO MICROSERVICES: STRATEGY & STEP-BY-STEP GUIDE

    MIGRATING FROM MONOLITH TO MICROSERVICES: STRATEGY & STEP-BY-STEP GUIDE

    Migrating from monolith to microservices is less costly and risky than redeveloping an entire system from scratch. But…

    1 条评论
  • Migrate a monolith application to microservices using DDD

    Migrate a monolith application to microservices using DDD

    A monolithic application is typically an application system in which all of the relevant modules are packaged together…

    1 条评论
  • Migrate From Monolithic To Microservices Using DDD Pattern

    Migrate From Monolithic To Microservices Using DDD Pattern

    The general migration approach has three steps: Stop adding functionality to the monolithic application Split the…

  • GraalVM

    GraalVM

    GraalVM has caused a revolution in Java development since it launched three years ago. One of the most discussed…

  • Finding the Perfect eCommerce Product Using Reverse Engineering

    Finding the Perfect eCommerce Product Using Reverse Engineering

    Building a successful online business is about more than just finding a trending product. It’s about finding the…

    1 条评论

社区洞察

其他会员也浏览了