Лента - вызов определенного uri приложения из URL-адресов, полученных от Eureka.

Давайте рассмотрим следующую ситуацию. В этом примере будут только URL-адреса, содержащие localhost. У меня есть настройка прокси-сервера zuul, и, допустим, он работает на порту 8080. Итак,

   Zuul proxy-
  localhost:8080

У меня есть настройка сервера eureka, работающая на порту 81.

 Eureka server-
localhost:8081.

У меня есть приложение, которое позволяет называть его по имени-примеру, который является веб-службой REST. Он работает на 3 разных портах 82,83 и 84. Все 3 экземпляра зарегистрированы на сервере eureka. У меня есть настройка фильтра в zuul для uri /example.

Поэтому я ожидаю, что потребители будут вызывать прокси-сервер zuul по адресу localhost:8080/example.

Теперь в примере приложения для сопоставления запросов /example есть настройка контроллера.

Поэтому я хочу, чтобы потребители вызывали localhost:8080/example и направляли этот запрос на localhost:8082/example, localhost:8083/example, localhost:8084/example . Я знаю, как сбалансировать нагрузку с помощью ленты и эврики, и у меня есть все необходимые свойства для достижения этой цели.

         zuul.routes.example.serviceid=example

         ribbon.eureka.enabled=true.

Я хочу, чтобы лента просматривала список URL-адресов с сервера eureka, а затем вызывала localhost: 8082 / пример, а не localhost: 8082.

Это возможно?

Заранее спасибо.


person Indraneel Bende    schedule 31.01.2018    source источник
comment
Вы пробовали zuul.stripPrefix=false?   -  person Ryan Baxter    schedule 31.01.2018
comment
Мои извинения, Райан, это работает. Просмотрел документацию и понял, для чего это свойство. Спасибо   -  person Indraneel Bende    schedule 01.02.2018


Ответы (1)


Вам нужно указать path и serviceId

zuul:
    routes:
        examplepath:
           path: /example/**
           serviceId: name-example
           stripPrefix: false

serviceId — это имя, зарегистрированное в Eureka. Надеюсь, вы указываете данные сервера Eureka в своем шлюзе Zuul.

person Rakz    schedule 01.02.2018