• springcloud6:负载均衡


    • 负载均衡是什么?
      Ribbon是客户端负载均衡的工具(在消费者),ribbon帮你基于某种规则(轮询,随机连接)去连接这些机器。
    • Ribbon在生产环境大规模部署,不会短期替代
    • Ribbon做些什么?
      负载均衡:用户请求分配到多个服务上实现高可用
      Nginx(集中式)服务端负载均衡,所有客户端请求交给Nginx,然后由nginx决定哪一个服务
      Ribbon(进程内)本地负载均衡,在调用微服务接口时就确定用哪一个服务
      Ribbon的使用:负载均衡+RestTemplate
    • Ribbon工作步骤
      第一步 先选择EureKa Server 优先选择同一个区域内负载较少的server
      第二部 根据用户指定的策略,从Server取到的服务注册列表里选择一个地址
    • 注意eureka依赖已经引入了ribbon,故已经可以负载均衡轮询方式
    • RestTemplate的使用(Ribbon的使用需要这个远程调用)
      getForObject/post(返回json串) 只返回json串
      getForEntity(返回ResponseEntity)返回更加详细
    • Ribbon核心思想
      轮询负载均衡
    • Ribbon核心组件Irule的默认自带组件规则
      轮询如何替换
      跳出扫描包(不能被ComponentScan扫描到)
      写Irule定义类(定义轮询算法)
      在主类中写注解
    @RibbonClient(name = "CLOUD-PAYMENT-SERVICE",configuration=MySelfRule.class)
    
    • 1
    • 理解原理并手写代码
      原理是什么?
      服务名称对应的IP有两个,如何切换?
      负载均衡算法:第几次请求%服务器集群总数量=实际服务器位置下标index,list.get(index)->具体服务地址。重启整个服务器,然后rest重新计数
      8001,8002总机器数字两台,
    • 源码分析
    • 手写一个负载均衡算法(原理+JUC(CAS+自旋锁的复习))
  • 相关阅读:
    【ai】pycharm添加本地解释器
    09-排序2 Insert or Merge(浙大数据结构)
    Linux —— 网络基础(一)
    SpringBoot+Vue实现前后端分离的企业人事管理系统
    python爬虫练手项目之获取某地企业名录
    Android-图片压缩(二)- 压缩基础
    Hive SQL案例
    MyBatis 参数传递详解
    关于 vim - YouCompleteMe 的安装
    实战干货——教你用Fiddler捕获HTTPS请求
  • 原文地址:https://blog.csdn.net/qq_44724899/article/details/128003575