首页
学习
活动
专区
圈层
工具
发布
34 篇文章
1
Spring Cloud Gateway的概念和背景
2
Spring Cloud Gateway的基本原理和特性
3
Spring Cloud Gateway 的架构和核心组件(一)
4
Spring Cloud Gateway 的架构和核心组件(二)
5
Spring Cloud Gateway环境搭建和配置(一)
6
Spring Cloud Gateway环境搭建和配置(二)
7
Spring Cloud Gateway路由的基本概念
8
Spring Cloud Gateway配置路由规则(一)
9
Spring Cloud Gateway配置路由规则(二)
10
Spring Cloud Gateway配置路由规则(三)
11
Spring Cloud Gateway路由规则的匹配和优先级(一)
12
Spring Cloud Gateway路由规则的匹配和优先级(二)
13
Spring Cloud Gateway过滤器配置
14
Spring Cloud Gateway过滤器配置-示例
15
Spring Cloud Gateway 过滤器的作用(一)
16
Spring Cloud Gateway 过滤器的作用(二)
17
Spring Cloud Gateway 过滤器的分类
18
Spring Cloud Gateway过滤器的执行顺序
19
Spring Cloud Gateway负载均衡(一)
20
Spring Cloud Gateway负载均衡-随机策略
21
Spring Cloud Gateway负载均衡-加权轮询策略
22
Spring Cloud Gateway负载均衡-加权随机策略
23
Spring Cloud Gateway限流(一)
24
Spring Cloud Gateway限流(二)
25
Spring Cloud Gateway高可用的实现
26
Spring Cloud Gateway网关安全性的保障(一)
27
Spring Cloud Gateway网关安全性的保障(二)
28
Spring Cloud Gateway 网关与微服务架构的整合(一)
29
微服务架构的基本概念和组件
30
Spring Cloud Gateway 的监控(一)
31
Spring Cloud Gateway 的监控(二)
32
Spring Cloud Gateway监控配置示例
33
Spring Cloud Gateway 的调试
34
使用 Spring Cloud Gateway 进行微服务架构的 API 网关实践

Spring Cloud Gateway负载均衡-加权轮询策略

加权轮询策略

加权轮询策略是在轮询策略的基础上增加了权重的概念,权重越大的服务实例会获得更多的请求。这种策略适合于一些性能较好的服务器,可以提高系统的性能。我们可以使用Spring Cloud Gateway提供的WeightedResponseTimeLoadBalancer来实现加权轮询负载均衡。

示例代码如下:

代码语言:javascript
复制
@Configuration
public class LoadBalancerConfiguration {
 
    @Bean
    public LoadBalancerClient loadBalancerClient() {
        return LoadBalancerClient.create();
    }
 
    @Bean
    public LoadBalancerProperties loadBalancerProperties() {
        return new LoadBalancerProperties();
    }
 
    @Bean
    public LoadBalancerFactory loadBalancerFactory() {
        return new LoadBalancerBuilderFactory();
    }
 
    @Bean
    public LoadBalancer<ServiceInstance> weightedRoundRobinLoadBalancer(
            LoadBalancerClient loadBalancerClient,
            LoadBalancerProperties loadBalancerProperties,
            LoadBalancerFactory loadBalancerFactory) {
 
        return loadBalancerFactory.create(loadBalancerClient, loadBalancerProperties,
                WeightedResponseTimeLoadBalancer.class);
    }
}

在这个例子中,我们与轮询策略的示例相似,只是将RoundRobinLoadBalancer改为WeightedResponseTimeLoadBalancer。

下一篇
举报
领券