【SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式,系统详解springcloud微服务技术栈课程|黑马程序员Java微服务】
之前我们已经通过
的方式修改了负载均衡的策略,简单实现了 随机调用
【现在我们来看个问题】
先重启一下order 服务
OK
现在来发送一次请求
第一次耗时345 ms
同样的请求,再发一次
可以看到,这次来到了14ms,哇,这个区别有点大
【原因】
Ribbon默认是采用懒加载,即第一次访问时才会去创建LoadBalanceClient,请求时间会很长【之后就不会了,因为服务列表会被缓存】。
而饥饿加载则会在项目启动时创建【“饥不择食”】,降低第一次访问的耗时,通过下面配置开启饥饿加载:
设置为true
ribbon:
eager-load:
enabled: true # 开启饥饿加载
clients: userservice # 指定对userservice这个服务饥饿加载
OK,直接重启服务
其实从日志都能够看到,这两个服务已经上来了
访问测试【第一次】
可以看到确实简短了一些,但是还是好长…
【原因】在服务调用时,还会完成一些别的事情
比如这个东西
OK, 这就是对饥饿加载的大致介绍
Ribbon负载均衡规则
负载均衡自定义方式
饥饿加载