当前位置: 首页 > news >正文

做淘宝电商比较厉害的网站婚纱摄影手机网站模板

做淘宝电商比较厉害的网站,婚纱摄影手机网站模板,快速网站开发工具,个人工作室注册条件SpringCloud底层其实是利用了一个名为Ribbon的组件#xff0c;来实现负载均衡功能的。1#xff09;LoadBalancerIntercepor可以看到这里的intercept方法#xff0c;拦截了用户的HttpRequest请求#xff0c;然后做了几件事#xff1a;1.request.getURI()#xff1a;获取请…SpringCloud底层其实是利用了一个名为Ribbon的组件来实现负载均衡功能的。1LoadBalancerIntercepor可以看到这里的intercept方法拦截了用户的HttpRequest请求然后做了几件事1.request.getURI()获取请求uri本例中就是 http://userservice/user/22.originalUri.getHost()获取uri路径的主机名其实就是服务iduserservice3.this.loadBalancer.execute()处理服务id和用户请求。这里的this.loadBalancer是LoadBalancerClient类型我们继续看源码。2LoadBalancerClient继续进入execute方法代码逻辑getLoadBalancer(serviceId)根据服务id获取ILoadBalancer而ILoadBalancer会拿着服务id去eureka中获取服务列表并保存起来。getServer(loadBalancer)利用内置的负载均衡算法从服务列表中选择一个。本例中可以看到获取了8083端口的服务放行后再次访问并Debug跟踪发现下一次获取的是8082确实是做到了负载均衡。3负载均衡策略IRule在刚才的代码中可以看到获取服务使通过一个getServer方法来做负载均衡:进入getServer方法继续跟踪源码chooseServer方法发现这么一段代码关于rule这里的rule默认值是一个RoundRobinRule看类的介绍The most well known and basic load balancing strategy, i.e. Round Robin Rule.最知名的基本负载平衡策略即Round Robin规则即轮循。负载平衡基本流程如下拦截我们的RestTemplate请求http://userservice/user/1RibbonLoadBalancerClient会从请求url中获取服务名称也就是userserviceDynamicServerListLoadBalancer根据userservice到eureka拉取服务列表eureka返回列表localhost:8081、localhost:8082.........IRule利用内置负载均衡规则从列表中选择一个例如localhost:8081RibbonLoadBalancerClient修改请求地址用localhost:8081替代userservice得到http://localhost:8080/user/2发起真实请求。负载均衡的规则都定义在IRule接口中而IRule有很多不同的实现类RoundRobinRule简单轮询服务列表来选择服务器。它是Ribbon默认的负载均衡规则。全局轮循AvailabilityFilteringRule对以下两种服务器进行忽略 1在默认情况下这台服务器如果3次连接失败这台服务器就会被设置为“短路”状态。短路状态将持续30秒如果再次连接失败短路的持续时间就会几何级地增加。 2并发数过高的服务器。如果一个服务器的并发连接数过高配置了AvailabilityFilteringRule规则的客户端也会将其忽略。WeightedResponseTimeRule为每一个服务器赋予一个权重值。服务器响应时间越长这个服务器的权重就越小。这个规则会随机选择服务器这个权重值会影响服务器的选择。ZoneAvoidanceRule以区域可用的服务器为基础进行服务器的选择。使用Zone对服务器进行分类这个Zone可以理解为一个机房、一个机架等。而后再对Zone内的多个服务做轮询。同一机房或者集群内部做轮循BestAvailableRule忽略那些短路的服务器并选择并发数较低的服务器。RandomRule随机选择一个可用的服务器。RetryRule重试机制的选择逻辑默认的实现就是ZoneAvoidanceRule。通过定义IRule实现可以修改负载均衡规则有两种方式1.代码方式在order-service中的OrderApplication启动类中定义一个新的IRuleBean public IRule randomRule(){return new RandomRule(); }2.配置文件方式在order-service的application.yml文件中添加新的配置也可以修改规则userservice: # 给某个微服务配置负载均衡规则这里是userservice服务ribbon:NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule # 负载均衡规则 **注意**一般用默认的负载均衡规则不做修改。4饥饿加载Ribbon默认是采用懒加载即第一次访问时才会去创建LoadBalanceClient请求时间会很长。而饥饿加载则会在项目启动时创建降低第一次访问的耗时通过下面配置开启饥饿加载ribbon:eager-load:enabled: trueclients: userservice5Nacos同集群优先的负载均衡默认的ZoneAvoidanceRule并不能实现根据同集群优先来实现负载均衡。因此Nacos中提供了一个NacosRule的实现可以优先从同集群中挑选实例。1给order-service配置集群信息修改order-service的application.yml文件添加集群配置spring:cloud:nacos:server-addr: localhost:8848discovery:cluster-name: CD # 集群名称2修改负载均衡规则修改order-service的application.yml文件修改负载均衡规则userservice:ribbon:NFLoadBalancerRuleClassName: com.alibaba.cloud.nacos.ribbon.NacosRule # 负载均衡规则
http://www.w-s-a.com/news/320540/

相关文章:

  • 网站设计跟网站开发区别为什么网站需要维护
  • m 的手机网站怎么做网络推广方式和方法
  • wordpress图片自动轮播插件seo门户网站建设
  • 制作商业网站传奇网页游戏排名
  • 网站免费推广方案长沙房地产网站设计
  • 济南网站建设cnwenhui中交路桥建设网站
  • 韶关网站开发网站建设任务分解
  • 网站建设核心点阿根廷网站后缀
  • 哪些网站可以做招商广告语学校官网页面设计
  • 十堰城市建设网站网站开发流程宜春
  • 内江网站建设郑州网站优化外包
  • 土地流转网站建设项目云南抖音推广
  • 建设银行网站无法打开2021年有没有人给个网站
  • 高端手机网站建设网站建设岗位绩效
  • 泰安网络推广 网站建设 网站优化免费素材网站psd
  • 做企业网站联系网站开发具体的工作内容
  • 联合易网北京网站建设公司怎么样网站页面开发流程
  • 2015做那些网站能致富网站建设审批表
  • 深圳 网站设计个人名片模板
  • 网站建设费用选网络专业网站在线推广
  • 天津建设网站c2成绩查询用记事本制作html网页代码
  • 织梦二次开发手机网站如何成为一名设计师
  • 网站公司建设网站镇江本地网站
  • 网页设计后面是网站建设吗凡客诚品的配送方式
  • 万链网站做的怎么样?深圳门户网站开发
  • 在线设计工具的网站怎么做wordpress多语言版本号
  • 建设购物网站要求优秀网站大全
  • 平顶山做网站公司用源码网站好优化吗
  • 网上电商游戏优化大师手机版
  • 个人微信公众号怎么做微网站吗网站域名需要续费吗