【问题标题】:Zuul Hystrix stream without using serviceId不使用 serviceId 的 Zuul Hystrix 流
【发布时间】:2017-01-12 23:01:33
【问题描述】:

我定义了一些 Zuul 路线,一切都很好。 hystrix 流是空的,according to this 原因是我没有使用服务。

所以我想要一些关于如何解决这个问题的帮助。我没有 Eureka(也不想开始使用这个简单的应用程序)。有没有办法用 url 而不是 serviceId 获取 hystrix 流?

任何帮助将不胜感激。

这是我配置的示例路由。 URL 占位符来自我的个人资料特定配置。

zuul.routes.v1stores.path=/v1/stores
zuul.routes.v1stores.url=${target.url}

zuul.routes.v1order.path=/v1/order/**
zuul.routes.v1order.url=${target.url}/v1/order

【问题讨论】:

  • 粘贴了任何代码?
  • 您的 Zuul 配置会有所帮助。如果您不使用 Eureka,您仍然可以将路由包装在 Hystrix 命令中,但您必须使用 Ribbon。请参阅我们文档中的此部分,其中解释了此 cloud.spring.io/spring-cloud-static/Camden.SR4/…
  • 在上面编辑以添加路线示例。我已经通过了那个文档。我原始帖子中的链接清楚地表明,如果使用 URL,则不使用 Ribbon,因此我试图确定是否可以在不使用服务的情况下获取 hystrix 流。

标签: spring-cloud netflix-zuul hystrix


【解决方案1】:

当前使用url 属性,将zuul 设置为不使用Hystrix。您需要使用功能区来访问 Zuul 中的 Hystrix 功能。为此,您可以执行以下操作 (see docs):

zuul.routes.v1order.path=/v1/order/**
zuul.routes.v1order.serviceId=v1order

v1order.ribbon.NIWSServerListClassName=com.netflix.loadbalancer.ConfigurationBasedServerList
v1order.ribbon.listOfServers=${target.url}

【讨论】:

  • 谢谢斯宾塞!这就是诀窍。我看到的一个副作用是添加了内容编码 gzip,所以我有一个响应正文记录器,现在不起作用。也许在调试配置文件中我可以以某种方式禁用它?是否有一些配置可以禁用 gzip(找不到功能区道具)?
  • 谢谢,斯宾塞。我偶然发现了一个解决方案。但花了一段时间才弄清楚。
猜你喜欢
  • 1970-01-01
  • 2016-09-13
  • 2019-05-08
  • 2019-07-05
  • 2020-08-08
  • 2014-05-20
  • 2016-04-03
  • 1970-01-01
  • 2016-12-30
相关资源
最近更新 更多