问题标签 [spring-cloud-loadbalancer]

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.

0 投票
1 回答
379 浏览

spring-cloud - 使用 Spring Cloud LoadBalancer 进行基于请求的粘性会话配置

我使用 Spring Cloud LoadBalancer 对基于请求的粘性会话进行了以下配置

以下调用:

应该只转到基于LoadBalancer 的基于请求的粘性会话say-hello1的实例,而是使用循环负载平衡。

我在这里想念什么?

这是尝试的源代码:https ://github.com/altfatterz/client-side-loadbalancing

0 投票
0 回答
165 浏览

spring-mvc - 为使用的 RestTemplate 为 @LoadBalanced 的 Spring 应用程序编写集成测试

假设我创建了一个 RestTemplate Bean,如下所示:

在控制器中,我使用它来调用外部服务。为了编写测试,我使用 MockWebServer 来模拟外部调用:

我在测试中得到以下异常:

如果我注释掉@LoadBalanced,所有测试都有效。

如何在测试中禁用负载平衡?

注意- 虽然可能有另一种方法来测试或创建 resttempalte bean 测试。这只是一个示例。实际上,我没有创造它的自由。它来自一个自定义 jar,该 jar 具有自定义配置的 rest-template。

示例项目在这里

0 投票
1 回答
527 浏览

java - spring webclient 负载均衡

以前从未使用过带有负载平衡的 webclient,我休养了https://spring.io/guides/gs/spring-cloud-loadbalancer/并实现了 webclient 负载平衡器,现在我正在尝试使用 helthchecks 并遇到问题。

我得到了下面的错误

当我评论“withHealthChecks()”时,一切都按预期工作。我的主要目标是禁用“DefaultServiceInstance”以防它失败(意味着 http 状态 503 或 404 或任何错误)。

我在https://github.com/ozkanpakdil/spring-examples/tree/master/web-client-loadbalancer准备了一个复制器,只需运行“mvn test”你就会看到错误。您可以在 fhttps://github.com/ozkanpakdil/spring-examples/tree/master/web-client-loadbalancer 查看配置。

0 投票
0 回答
105 浏览

spring-cloud-loadbalancer - 生产时不建议使用 Spring Cloud LoadBalancer 的默认缓存吗?

Spring Boot 2.5.2 版 spring-cloud 2020.0.3 版

应用程序启动时的警告——

为什么此日志行打印为警告?使用 Spring Cloud LoadBalancer 的默认缓存不好吗?

0 投票
1 回答
319 浏览

java - Spring 云负载均衡器 - 带有健康检查/重试的 Feign + SimpleDiscoveryClient

升级 Spring Cloud 版本后,我正在努力从 Ribbon 切换到 Spring Cloud Loadbalancer。使用 Feign 设置 SimpleDiscoveryClient 很容易。但是 simplediscovery 客户端“太简单了”。我想至少添加一个运行状况检查,这样它就不会使用可能已关闭的实例,最好也是重试机制。我已经一遍又一遍地阅读了文档,但找不到一种简单的方法来设置它。

https://docs.spring.io/spring-cloud-commons/docs/current/reference/html/#instance-health-check-for-loadbalancer 我找到了这个用于健康检查的示例自定义配置,但它没有工作。

如果我按原样运行它,它会引发以下缺少的 bean 错误: XXX.CustomLoadBalancerConfig 中的方法 discoveryClientServiceInstanceListSupplier 需要找不到类型为“org.springframework.web.client.RestTemplate”的 bean。

谁能给我一些关于如何使其工作或如何复制功能区行为的指示?

0 投票
0 回答
144 浏览

spring-boot - Spring boot 2.5.3 和 Spring Cloud Gateway 2020.0.3 间歇性不处理请求

我们在我们的应用程序中使用 Spring Boot 2.5.3 和 Spring Cloud Gateway 2020.0.3。该应用程序工作正常,但间歇性地,通常在 5-6 小时后,网关服务会停止处理请求一段时间,比如 3 到 5 分钟。之后,它再次开始正常工作。静态文件请求和 API 端点都会发生这种情况。

将网关从 Zuul 升级到 Spring Cloud Gateway 后,我们遇到了这个问题。我试过设置pool.max-idle-timeout,但没有帮助。这些请求不会出现在日志中,异常也不会出现。

0 投票
1 回答
188 浏览

spring-boot - 如果我们在 K8s 中部署应用程序时使用 Eureka Discovery、Ribbon 等 Spring Cloud,何时使用?

我们在 Spring Cloud 中有负载均衡、发现等。但是同样的负载均衡,发现也可以在 Kubernetes 中使用。所以只是想知道我们什么时候应该使用 Spring Cloud(负载平衡或发现)以及什么时候使用 Kubernetes

0 投票
0 回答
38 浏览

spring-boot - 添加 CorsConfiguration 后 LoadBalance 失败

环境:

  1. Spring Cloud 版本:2020.0.2,Spring-cloud-starter-alibaba-nacos 版本:2021.1

  2. 我已经在 pom.xml 中排除 netflix-ribbon 并导入 spring-cloude-starter-loadbalancer,并在网关配置中使用“lb://url”格式

问题:我需要Spring Cloud Gateway Cors跨域操作。因此,根据网上的解决方案(https://www.programmerall.com/article/5764552098/),我设置了附加的Mono过滤器。对于跨域,此解决方案可以正常工作。但是,nacos 中默认的负载均衡器(轮换)不适用于这种跨域策略。是否有任何可能的解决方案可以在 nacos 中使用负载均衡器进行跨域工作?

谢谢

0 投票
0 回答
129 浏览

spring - 将自定义负载均衡器用于带有运行状况检查配置的 Spring Cloud 负载均衡器时出错

我正在使用静态列表(SimpleDiscoveryClient)使用spring cloud loadbalancer进行负载平衡。在https://github.com/fitzoh/spring-cloud-commons/blob/e10997b6141ff560479ef7065c3547f1f59360c8/spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/core/StickySessionLoadBalancer.java中使用 StickySession Loadbalancer 规则.

我的 WebClientConfig 类:

自定义 LoadBalancer 配置类:

在这里发布我的 yml :

都是按照官方文档来的。但是使用 customloadbalancer 规则(Stickysession Loadbalancer),对服务器的健康检查不会发生以检查服务器是否处于活动状态。服务器列表始终为空(所有服务器都标记为不活动)。

0 投票
0 回答
131 浏览

spring - Spring Cloud负载均衡器的多重配置

Spring Cloud Load Balancer multiple configurations中提出的类似问题。

我想同时为 spring 云负载均衡器使用运行状况检查和相同实例偏好配置。无法提供多个配置。

我正在使用 SimpleDiscoveryClient 列出实例。此外,如果这两种配置都被合并,它可以替代粘性会话负载均衡器规则吗?

在这里发布我的 yml: