Динамическая настройка Zuul Proxy во время выполнения?

У меня есть путь URL, который выглядит следующим образом:

/{identifier}/rest/of/resource/path

Если identifier является A тогда запрос должен идти service_I, Если identifier является B тогда запрос также должен идти в service_I, Если identifier является Cто запрос должен идти service_II, и так далее.

Позже новый identifiersM а также N добавляется в систему, и их запросы должны быть направлены на service_IV,

Можно ли динамически настроить прокси-сервер zuul в облаке Spring для выполнения задач, описанных выше?

редактировать

Этот предложенный вопрос содержит другой способ изучения вопроса.

В нем Zuul имеет следующую конфигурацию:

zuul:
  routes:
    <service_id>:
      path: /path/**

Зуул будет сотрудничать с Эврикой, чтобы найти service-id и вернуть параметры хоста, чтобы сервис был доступен. Что если вместо /path у нас есть /{userID} и userID экземпляры распределены по нескольким service_id хосты?

Может ли Zuul / DiscoveryClient запросить Eureka для обоих service_id и userID выяснить, какой хост хостинг конкретного userID?

1 ответ

Решение

Вам нужно будет написать кастом ZuulFilter чтобы сделать это. Посмотрите на PreDecorationFilter для некоторых подсказок, поскольку это фильтр, ответственный за обработку /path где путь service-id (между прочим).

Другие вопросы по тегам