Можно ли использовать пограничный сервер Zuul без Eureka / Ribbon

У нас есть инфраструктура с обнаружением службы и балансировкой нагрузки (т. е. серверная сторона с кластером STM и weblogic). Сейчас мы находимся в процессе рефакторинга в микро-услуг. Нам понадобится шлюз API, который выполняет базовую маршрутизацию на другие микросервисы. Netflix Zuul выглядит хорошим кандидатом, однако я не мог заставить Zuul работать без Eureka-но нам не нужна Eureka, так как у нас уже есть обнаружение службы и балансировка нагрузки.

  1. можно ли использовать Зуул без Эврики и ленты?
  2. Если да, пожалуйста, предоставьте некоторые гильдии-линии, так как в Вики нет упоминания.

спасибо.

2 ответов


Да, это вполне возможно.Вы должны использовать @EnableZuulProxy на вашем классе конфигурации и настройте его примерно так:

zuul:
  routes:
    yourService:
      path: /yourService/**
      serviceId: yourService

ribbon:
  eureka:
    enabled: false

yourService:
  ribbon:
    listOfServers: localhost:8080

пример использования может быть такой:

shared.microservice.customer.service1.url=zttp://127.0.0.1:8080/shared/microservice/customer/

shared.microservice.customer.service2.url=zttp://127.0.0.1:8181/shared/microservice/customer/

ribbon.eureka.enabled = false

zuul.routes.customer-micro-service.path: /shared/microservice/customer/**

zuul.routes.customer-micro-service.serviceId: customers
customers.ribbon.listOfServers = 

zttp://ip:port1/shared/microservice/customer/,zttp://ip2:port2/shared/microservice/customer/