Spring Cloud SOFA 提供了自己的负载均衡算法来替代 Spring Cloud 原生算法(替换 LoadBalancer 或 Ribbon 的算法),并且默认生效。Spring Cloud SOFA 的负载均衡算法加入了对权重的处理,在 SOFA 微服务控制台上配置的权重必须通过 Spring Cloud SOFA 的负载均衡算法才能生效。
配置负载均衡
Spring Cloud SOFA 目前提供了随机和轮询两种负载均衡策略,默认为随机。这两种算法均加入了权重的处理。
如果需要切换负载均衡算法,您可以在application.properties
文件中配置以下参数。
配置项 | 说明 | 默认值 |
spring.cloud.sofa.loadbalancer.type | 默认的负载均衡算法,可选 random 和 roundRobin | random |
spring.cloud.sofa.loadbalancer.types.{serviceId} | 分服务配置负载均衡算法 | 无 |
重要
SOFA 提供的负载均衡功能需要依赖 Spring Cloud 的负载均衡框架来运行。另外,如果使用 Ribbon 框架作为负载均衡框架,则还需额外引入 Spring Cloud SOFA Router 模块才能生效。
关闭 SOFA 负载均衡
如果不需要 SOFA 的负载均衡算法,您可以在application.properties
文件中配置spring.cloud.sofa.loadbalancer.enabled
值为false
来关闭。关闭后负载均衡算法将回到 Spring Cloud 进行处理(取决于您使用的是 LoadBalancer 还是 Ribbon),或通过您配置的其他负载均衡进行处理。
spring.cloud.sofa.loadbalancer.enabled=false
该文章对您有帮助吗?