想了解微服务的同学,欢迎订阅微服务全家桶专栏,我后续会不断推出新的文章.包括不限于网关,消息队列,注册中心,远程调用,搜索引擎等微服务相关技术文章,文章内容主要基于对黑马视频课程和尚硅谷视频课程的总结整理.
1.负载均衡器Ribbon
1.1 负载均衡源码/原理
ribbon可实现微服务中单个服务多个实例的负载均衡,其实现负载均衡的核心代码如下图所示:
1.2 负载均衡策略
负载均衡规则的接口是IRule,默认实现是ZoneAvoidanceRule,根据zone选择服务列表,然后轮询。
配置文件的方式修改负载均衡策略
1.3 开启饿加载
Ribbon默认采用懒加载,也就是第一次访问时才会去创建LoadBalanceClient,请求时间会很长。而饥饿加载会在项目启动时创建,降低第一次访问的耗时,通过下面配置开启饥饿加载: