1.

What is Strangulation Pattern in microservices architecture?

Answer»

Strangulation is used to slowly decommission an older system and migrate the functionality to a newer version of microservices. 

Normally one endpoint is Strangled at a time, slowly replacing all of them with the newer implementation. Zuul Proxy (API Gateway) is a useful tool for this because we can use it to handle all traffic from clients of the old endpoints, but redirect only selected requests to the new ones. 

Let’s take an example use-case: 

/src/main/resources/application.yml  zuul:     ROUTES:

first:

path: /first/** url: http://first.example.com --1

legacy:

path: /** url: http://legacy.example.com  -- 2 
  1. Paths in /first/** have been EXTRACTED into a new service with an EXTERNAL URL http://first.example.com 
  2. legacy app is mapped to handle all REQUEST that do not match any other patterns (/first/**). 

This configuration is for API Gateway (zuul reverse proxy), and we are strangling selected endpoints /first/ from the legacy app hosted at http://legacy.example.com slowly to newly created microservice with external URL http://first.example.com



Discussion

No Comment Found