负载均衡策略
负载均衡是一种在多个服务器或资源之间分配网络流量或请求的技术。其目的是优化资源利用率、提高应用程序的可用性和响应速度,同时避免任何单点故障。
Ribbon的负载均衡规则是一个叫做IRule的接口来定义,每一个子接口都是一种规则:各个接口的关系如下
Ribbon负载均衡常见规则类:
通过定义IRule实现 可以修改负载均衡规则 有两种方式 :
1.方法一:代码方式,在order-service中的OrderApplication类中,定义一个新的IRule:
代码实现:
@Bean public IRule randomRule(){ return new RandomRule(); }
注意:这种方式定义会使得OrderApplication类访问的所有服务都遵循 RandomRule规则。
2.方法二:配置文件方式,在order-service的application.yml文件中 添加新的配置也可以修改规则:
userservice:
ribbion::
NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule#负载均衡规则
注意:这种方式仅对单一service生效。