哪个网站做非洲的生意,手机怎么自己制作图片,陕西省建设厅执业资格注册中心网站报名系统,WordPress社区论坛目录
Ribbon 负载均衡原理
工作流程 Ribbon 负载均衡规则
Ribbon 负载均衡自定义化
代码方式修改规则
配置文件方式修改规则
小总结
Ribbon 设定饥饿加载 Ribbon 负载均衡原理 工作流程 order-service 使用 RestTemplate 发送请求#xff0c;随后该请求将会被 Ribbon 所…目录
Ribbon 负载均衡原理
工作流程 Ribbon 负载均衡规则
Ribbon 负载均衡自定义化
代码方式修改规则
配置文件方式修改规则
小总结
Ribbon 设定饥饿加载 Ribbon 负载均衡原理 工作流程 order-service 使用 RestTemplate 发送请求随后该请求将会被 Ribbon 所拦截Ribbon 从 url 中拿取服务名 userservice并到 eureka-server 拉取属于该服务名的服务列表Ribbon 通过负载均衡算法从服务列表中拿取一个 ip 端口Ribbon 将重新修改 url并将该请求发送出去 下图为底层工作流程 Ribbon 负载均衡规则 Ribbon 的负载均衡规则是由 IRule 接口所定义的IRule 的每一个子接口均可视为一种规则 IRule 接口的默认实现为 ZoneAvoidanceRule根据 zone 选择服务列表然后轮询 验证 Ribbon 的默认负载均衡规则 查看 user-service:8081 的日志信息查询了用户id 1 和 3 查看 user-service:8082 的日志信息查询了用户id 2 和 4 由此可以看出 order-service 发出的请求以轮询的方式被接收 Ribbon 负载均衡自定义化 通过定义 IRule 实现可以修改默认负载均衡规则 代码方式修改规则 在 order-service 中的 OrderApplication 类中定义一个新的 IRule此处我们将负载均衡规则修改为 随机规则 Bean
public IRule randomRule() {return new RandomRule();
} 配置文件方式修改规则 在 order-service 的 application.yml 文件中添加新的配置也可以修改规则此处我们还是将负载均衡规则修改为 随机规则 userservice:ribbon:NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule # 负载均衡规则 小总结 代码方式配置更加灵活但修改时需要重新打包发布配置方式直观、方便无需重新打包发布但是无法做全局配置 Ribbon 设定饥饿加载 Ribbon 默认采取懒加载的方式也就是只有第一次访问时才会去创建即第一次访问时才会去创建 LoadBalanceClient请求时间会很长 设定饥饿加载 Ribbon 可以修改为饥饿加载饥饿加载会在项目启动时创建降低第一次访问的耗时通过在 application.yml 文件中添加下方配置开启 Ribbon的饥饿加载 ribbon:eager-load:enabled: true # 开启饥饿加载 clients: # 指定饥饿加载的服务名称- userservice
# - xxservice 按照该格式指定多个服务名称