问题标签 [netflix-ribbon]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
netflix-eureka - 使用 Zuul/Eureka 自定义功能区配置
我在我们的环境中使用 Spring Cloud Netflix Zuul 和 Eureka。
我假设 Zuul 在内部使用 Ribbon 在从 Eureka 获取实例信息后进行负载平衡。
与 Zuul/Eureka 一起使用时,我想自定义功能区配置。
当与 Zuul/Eureka 一起使用以更改为不同的负载平衡策略时,我不确定如何配置 Ribbon。
如果有人使用过,您可以分享相同的详细信息。
spring-cloud - 如何在方法级别使用控制功能区重试?
我配置功能区如下所示:
据我所知,这是全局配置。功能区中的租赁控制在服务中,您可以更改功能区配置,如下所示:
问题是:如何配置方法以使用功能区重试?
有没有办法:you-service.you-method.ribbon.xxx
?
java - Feign with Ribbon: 重置
我们正在尝试在我们的一个项目中使用 Feign + Ribbon。在生产代码中,我们没有问题,但在 JUnit 测试中我们有一些问题。
我们正在尝试模拟多种情况(服务失败、正常运行、异常等),因此我们需要在集成测试中多次配置 Ribbon。不幸的是,我们注意到即使我们销毁 Spring 上下文,部分状态可能仍然存在于静态变量中的某个地方(例如:新测试仍然连接到以前套件中的平衡器)。
有什么推荐的方法,如何清除这两个工具的静态状态?(类似Hystrix.reset()
)
提前致谢!
我们尝试在每个套件之后重置 JVM - 它运行良好,但不是很实用(我们必须在 Gradle 和 Idea 中设置它(因为 Idea 测试调谐器不支持开箱即用))。我们还尝试在测试之间重命名服务 - 这可以说是 99%(它有时会由于某种原因失败......)。
spring-cloud - Spring Cloud Zuul 转发错误
我使用 Eureka 作为注册服务器,其中 Zuul 正在注册另外注册到我的应用程序模块 cmpnyhbaseserialser。
但是,当我发出 POST 请求时,我收到以下错误:
netflix-zuul - 功能区可以在多个端点之间平衡负载吗?
我有一个 Zuul+Ribbon 网关应用程序。
我有一个正在运行的旧服务localhost:8081
和一个正在运行的新服务localhost:9000
两种服务都有一个按 ID 查找项目的 API,但是在旧的服务上,它的 URI 是
而在新服务上是
我想将 90% 的流量引导到旧服务,将 10% 的流量引导到新服务。我知道如果他们在同一个 URI 上都有一个 API 端点,这是可能的。
但是,是否可以在两个不同的 URI 之间进行负载平衡?如果是,功能区配置是什么样的?
谢谢!
java - 访问内部微服务
我有两个不同的微服务,将 eureka 作为服务注册表,现在我试图从另一个微服务调用一个微服务,使用功能区解析端点以实现客户端负载平衡。
服务一:
该服务公开了一个端点,http://localhost:15000/api/user/{userId}
application.yml 如下,
调用服务 A 的服务 B 具有以下应用程序类:
控制器
服务
但是当我尝试访问该服务时出现异常:
对此有任何指示吗?
netflix-feign - Feign + Ribbon请求拦截AFTER目标主机被选择
我目前在做什么(这是非常简单方便的方式):
但拦截发生在功能区实际解析目标主机之前。问题是,我要添加的一个标头必须基于目标主机的名称来创建。
无论如何我可以在主机解决后操纵标头?
microservices - 如何通过zuul获取微服务每个实例的日志
我已经设置了我的微服务的多个实例并注册到我的尤里卡服务器。它使用功能区进行客户端负载平衡,并使用 zuul 作为网关服务器。所有平常的东西。我想捕获我的服务实例响应每个请求的日志。这样我就可以根据我对每个实例的使用情况得出一些结论。怎么做?
java - 如何在ribbon或Feign中设置loadBalancerKey的值
在 Spring Cloud 中,我使用 Ribbon 或 Feign 作为客户端 API,并且我们在 Eureka 中注册了一个服务器集群。在我的情况下,我想使用特定的键来确定我要调用哪个服务器,例如:server-A
有两个实例,localhost:8001
并且localhost:8002
我想8001
通过设置来调用loadBalancerKey
to 8001
,之后我可以编写我的自定义余额规则类来选择我可以像下面这样调用哪个服务器:
spring-boot - Netflix Zuul - 查找元数据以影响路由?
我们正在设计一个应用程序基础架构,目的是让 Zuul 作为 Web 应用程序的智能路由器(还有微服务,但与这个问题正交)。
我正在努力理解 Zuul 想要如何工作,我很失望我找不到一些信息丰富的概述,所以我可以理解如何做我想做的事情。有人知道这样的参考吗?
我们有两个要求,我很难理解 Zuul 将如何(以及是否)处理。
我们要实现基于应用程序版本的路由。另外,如果客户端处于升级模式,我们会返回一个“稍后再试”页面。
我们可能不得不忍受 Web 应用程序的粘性会话。
对于基于版本的路由,我们将可以访问位于分布式元数据缓存前面的微服务。在缓存中,我们将拥有与基础设施相关的客户端信息。我们可以从请求 URL 中确定客户端。
所以,我想我们将在预过滤器中进行客户端查找,并在路由过滤器中对这些信息进行智能处理。有人可以让我开始吗?
对于粘性会话,我发现以下内容:
这对我来说看起来很聪明,似乎是我正在寻找的。但是,我想更好地了解这是如何工作的。有人可以建议吗?