【问题标题】:Zuul routes by serviceId does not workserviceId 的 Zuul 路由不起作用
【发布时间】:2018-06-27 14:48:34
【问题描述】:

我在不同的帖子上遇到过类似的问题,但它们对我来说毫无用处(没有答案或没有帮助的答案)。我将在这里描述所有细节并希望得到帮助。

我用的是java8,spring boot 2.0.3,spring cloud元素都是基于Finchley.RELEASE版本的。

在我的测试微服务应用程序中,我有下一个服务:config-serverdiscovery-service(Eureka)、edge-service( zuul),卡服务。所有服务在启动时从 configuration-server 加载它们自己的配置。服务启动没有问题。

card-service - 在开始时获取随机端口。这是serviceId将zuul rout配置为calendar-service的原因。

zuul:
  debug:
    request: true
  routes:
    card-service:
        path: /card-service/**
        serviceId: card-service
        stripPrefix: true

使用 discovery-service 客户端我检测到下一个注册服务["edge-server", "card-service"]。所以 zuul 路由使用相同的 serviceId (card-service)。服务名称是正确的,因为在 card-service app bootstrap.yml:

spring:
  application:
    name: card-service

我通过以下方式直接访问card-service

http://localhost:59496/card-service/api/cards

http://localhost:59496/api/cards

(我为它配置了相同的结果)。 - 工作正常。

我的 Zuul(edge-server8765 端口上启动)所以我希望通过

进行导航

http://localhost:8765/card-service/api/cards

给出相同的结果。但结果是空的。检查 edge-server 日志:

No handler mapping found for [/card-service/api/cards]
Last-Modified value for [/card-service/api/cards] is: -1

通过执行器映射检查 edge-serverhttp://localhost:8765/actuator/mappings - 我在这里展示了最感兴趣的部分):

{
  "contexts": {
    "edge-server-1": {
      "mappings": {
        "dispatcherServlets": {
          "dispatcherServlet": [
            ...,
            {
              "handler": "org.springframework.cloud.netflix.zuul.web.ZuulController@24a37416",
              "predicate": "/card-service/**",
              "details": null
            },

问题

知道如何修复 zuul 的路线映射吗?

【问题讨论】:

  • zull.routes.card-service 的缩进错误。如果正确,请检查 :8765/configprops 的 zuulproperties 部分。

标签: spring routing spring-cloud netflix-zuul service-discovery


【解决方案1】:

这是我的失败。我以为我已经按照教程对其进行了配置,但似乎自动完成在 Spring Boot 配置中使用了 @EnableZuulServer 而不是 @EnableZuulProxy@EnableZuulProxy 需要为 Zuul 加载配置的 routes 并且一切正常。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-25
    • 2017-01-26
    • 1970-01-01
    • 1970-01-01
    • 2016-12-23
    • 2017-10-31
    • 2019-11-03
    相关资源
    最近更新 更多