微服务框架 SpringCloud微服务架构 4 Ribbon 4.3 饥饿加载
创始人
2024-02-27 06:36:45
0

微服务框架

【SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式,系统详解springcloud微服务技术栈课程|黑马程序员Java微服务】

SpringCloud微服务架构

文章目录

      • 微服务框架
      • SpringCloud微服务架构
      • 4 Ribbon
        • 4.3 饥饿加载
          • 4.3.1 饥饿加载
          • 4.3.2 总结

4 Ribbon

4.3 饥饿加载

4.3.1 饥饿加载

之前我们已经通过

在这里插入图片描述

的方式修改了负载均衡的策略,简单实现了 随机调用

在这里插入图片描述

【现在我们来看个问题】

先重启一下order 服务

在这里插入图片描述

OK

现在来发送一次请求

在这里插入图片描述

第一次耗时345 ms

同样的请求,再发一次

在这里插入图片描述

可以看到,这次来到了14ms,哇,这个区别有点大

【原因】

Ribbon默认是采用懒加载,即第一次访问时才会去创建LoadBalanceClient,请求时间会很长【之后就不会了,因为服务列表会被缓存】。

而饥饿加载则会在项目启动时创建【“饥不择食”】,降低第一次访问的耗时,通过下面配置开启饥饿加载:

设置为true

ribbon:eager-load:enabled: true # 开启饥饿加载clients: userservice # 指定对userservice这个服务饥饿加载

在这里插入图片描述

OK,直接重启服务

在这里插入图片描述

其实从日志都能够看到,这两个服务已经上来了

访问测试【第一次】

在这里插入图片描述

可以看到确实简短了一些,但是还是好长…

【原因】在服务调用时,还会完成一些别的事情

在这里插入图片描述

比如这个东西

OK, 这就是对饥饿加载的大致介绍

在这里插入图片描述

4.3.2 总结
  1. Ribbon负载均衡规则

    • 规则接口是IRule
    • 默认实现是ZoneAvoidanceRule,根据zone选择服务列表,然后轮询
  2. 负载均衡自定义方式

    • 代码方式:配置灵活,但修改时需要重新打包发布
    • 配置方式:直观,方便,无需重新打包发布,但是无法做全局配置
  3. 饥饿加载

    • 开启饥饿加载
    • 指定饥饿加载的微服务名称

相关内容

热门资讯

债务逾期13亿元!因借款合同纠... 12月21日晚间,万通发展(SH 600246)发布公告称,公司控股股东嘉华东方控股(集团)有限公司...
大治一男子拦停轿车打砸!警方称... 近日,有网友发布视频称,湖北省大治市发生男子拦车打砸事件,并称起因系“男子带娃骑电动车遭汽车溅水”。...
宁波小洛熙事件:医学,咱不懂;... 文|庄志明律师 宁波小洛熙事件最近在网上被广泛热议,今天看新闻又涉及尸检报告,要求卫健委解释小洛熙尸...
北京律师行业年均免费为群众提供... 12月19日,北京市律师协会发布《北京市律师行业社会责任报告》,展示“十四五”时期北京律师行业在履行...
分居期间男子与公司女员工不正当... 公司股东李某乙在与妻子李某甲分居期间,与公司女员工马某某存在不正当交往并育有子女,还向其大额转账。李...
男子带作弊设备考科目一,被考官... 花钱就能够通过科目一考试,前不久,一名男子轻信朋友考试“包过”承诺,带着隐蔽的作弊设备进入考场,没想...
一个月内收两封监管函,瑞茂通怎... 12月19日,瑞茂通(600180)公告,于2025年12月19日收到监管工作函,监管机构就公司信息...
律师的作用 我以前自己打官司都是当被告,想办法不让对方讹诈就行,感觉律师没啥用,只是在法庭替你发言而已,孩子谢浩...
120多万卡宴只卖60万!海南... 12月20日,话题#海南封关120多万卡宴只要60万#冲上热搜,引发公众热议。 据媒体报道,12月1...