Маршрутизация запросов к микросервисам

Существует сервис с "кучей" контроллеров. Стоит задача "распилить" данный сервис на микросервисы.

Сами микросервисы будут крутится на самостоятельных машинах.

Основная проблема в том, что есть некий роут(http://mydomain/myservice/srv/data), на который приходит разного типа запросы.

А логика после вызывается на основании значения в поле запроса. То есть два запроса на получение name и balance должны уходить на разные логики будующих микросервисов(получение имени должно перенаправится, к примеру, на http://mydomain/myservice1/data/name, а получение баланса на http://mydomain/myservice2/data/balance ).

По факту сейчас вижу такие решения(если они возможны, конечно):

Анализ на точке входа(ngix) Написание сервиса-маршрутизатора(анализирует и, грубо говоря, перенаправляет запросы RestTemplate'ом, к примеру, на микросервисы) Вопрос: какие штатные средства есть для анализа содержимого тела запроса и дальнейшего перенаправления на другой микросервис?

Очень не хочется городить "велосипед" с п.2

Может есть какие либо библиотеки для подобных целей, где можно лаконично это реализовать, к примеру.

UPD: рассматриваются и легковестные библиотеки, с помощью которых можно реализовать такой роутинг, основанный на содержимом тела запроса. Т.к. дали ясно понять, что вариант с настройкой ngix - крайний


Ответы (0 шт):