Ribbon 负载均衡之懒加载、饥饿加载
1.Ribbon 负载均衡之懒加载、饥饿加载
1.懒加载
首先启动一次springboot微服务看看启动时 后台都会报哪些信息?
这里OrderApplication启动服务共花费4秒多。 然后通过OrderApplication调用一次UserService服务
可以看到这里userservice初始化了负载均衡器,并且ServerList刚开始为空,所以接下来会进行一次PollingServerListUpdater 拉取动作,对LoadBanlanceClient进行初始化,并存储。
这个过程称之为懒加载操作,即第一次加载完成后,会将刚才访问的服务缓存在内存中,此后再次访问相同服务则无需加载,因此第一次访问需要消耗比较长的时间,服务默认使用此加载方式。
2.饥饿加载
Ribbon默认采用的时懒加载方式,即第一次访问时才会去创建LoadBalanceClient,请求时间会很长。
而饥饿加载则会在项目启动时创建,降低第一次访问时的好事,通过下面配置开启饥饿加载:
ribbon:
eager-load:
enabled: true #开启饥饿加载
clients: userservice #指定饥饿加载的服务名称 #注意这个仅能指定一种服务 如果同时指定多个服务使用以下方式
clients:
-userservice
-userservice
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!