web-dev-qa-db-ja.com

Zuul EdgeServerはEureka /リボンなしで使用できますか

サービス検出と負荷分散を備えたインフラストラクチャがあります(つまり、STMとweblogicクラスターを備えたサーバー側)。現在、マイクロサービスへのリファクタリングを行っています。他のマイクロサービスへの基本的なルーティングを行うAPIゲートウェイが必要になります。 Netflix Zuulは良い候補に見えますが、EurekaなしではZuulを機能させることはできませんでしたが、サービス検出と負荷分散がすでに行われているため、Eurekaは必要ありません。

  1. ユーレカとリボンなしでズールを使用することは可能ですか?
  2. はいの場合、ウィキには言及がないため、ギルドラインをいくつか提供してください。

ありがとう。

16
Fahim Farook

はい、それは完全に可能です。構成クラスで@EnableZuulProxyを使用し、次のように構成する必要があります。

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

ribbon:
  eureka:
    enabled: false

yourService:
  ribbon:
    listOfServers: localhost:8080
19
Ákos Ratku

使用例は次のようになります。

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/
3
user1562166

はい、もちろんできます。実際、Spring Bootで@ EnableZuulProxyを使用する場合、デフォルトではアクチュエーター、2つの追加エンドポイントを有効にします。

  • ルート
  • フィルター

application.yaml

zuul:
  routes:
    users:
      path: /myusers/**
      url: https://example.com/users_service

これらの単純なURLルートはHystrixCommandとして実行されません。また、リボンを使用して複数のURLの負荷を分散しません。

Yoは ここ からより多くの情報を得ることができます。

0
fgul