Ribbon负载均衡

时间:2024-03-30 17:38:33

4.1.负载均衡原理

4.2源码追踪

我们只输入了service名称就可以访问了呢?之前还要获取ip和端口。因为这里拦截了请求它就是LoadBalancerInterceptor ,这个类实现了下面这个这个接口,拦截发送的请求然后从Eurka或者nacos中拉取服务

LoadBalancerIntercepor

实现客户端拦截请求

总结(重点)

负载均衡策略

默认为实现就是ZoneAvoidanceRule,是一种轮询方案

自定义负载均衡策略(重点)

通过定义IRule实现可以修改负载均衡规则,有两种方式:

代码方式:在order-service中的OrderApplication类中,定义一个新的IRule

  1. 配置文件,这里是给nacos配置

  2. 饥饿加载:
  3. Ribbon默认的加载失败懒加载,第一次会比较慢,但是第一次加载后就会缓存,后面访问速度就会提升
  4. 可以使用饥饿加载来配置,减少第一次访问所需要的时间