微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在Spring Cloud Gateway中将配置从功能区更改为Spring Cloud Load Balancer

如何解决在Spring Cloud Gateway中将配置从功能区更改为Spring Cloud Load Balancer

我具有带功能区的Spring Cloud Gateway的以下配置

server:
  port: 8080

spring:
  cloud:
    gateway:
      routes:
        - id: UserModule
          uri: lb://load-balanced-service-user
          predicates:
            - Path=/api/user/**
ribbon:
  eureka:
    enabled: false
Load-balanced-service-user:
  ribbon:
    listofServers: localhost:9999,localhost:8888

现在,我想卸下功能区,并更换为弹簧云负载平衡器。

添加

 <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-loadbalancer</artifactId>
        </dependency>

现在我还需要在application.yaml文件添加其他什么配置才能切换到Spring Cloud Load Balancer?我想在.yaml文件添加配置。我不想使用.yaml文件中配置的功能区破坏旧结构。

解决方法

如果您使用的是Hoxton发布火车,则需要将spring.cloud.loadbarancer.ribbon.enabled设置为false。据我所知,您使用的是服务器的静态列表,而不是服务注册表。在LoadBalancer中,您可以通过添加属性支持的SimpleDiscoveryClient来实现。请注意,为重现此类静态实例的功能区运行状况检查行为,我们建议使用Instance Health Check mechanism并禁用负载均衡器缓存,因为“实例运行状况”检查机制提供了一种替代缓存机制。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。