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

家政保洁公司网站建设方案室内设计意向图网站

家政保洁公司网站建设方案,室内设计意向图网站,seo搜索引擎优化试题,网站开发树形图引言 本篇博客简单介绍微服务负载均衡的概念#xff0c;并通过 IDEA 多端口启动应用的方式#xff0c;模拟多个应用实例#xff0c;使用自定义和 Ribbon 两种方式实现基本的负载均衡策略。 微服务代码以《Spring Cloud Alibaba——Nacos实现服务治理》为基础。 一、什么是…引言 本篇博客简单介绍微服务负载均衡的概念并通过 IDEA 多端口启动应用的方式模拟多个应用实例使用自定义和 Ribbon 两种方式实现基本的负载均衡策略。 微服务代码以《Spring Cloud Alibaba——Nacos实现服务治理》为基础。 一、什么是负载均衡 负载指的是系统接收请求的压力通常来讲单体应用如果接收的请求量过多会对应用本身造成一定的并发困扰导致逻辑出错甚至是服务瘫痪。 为了解决单个应用访问量过大的情况人们很自然的想到将一个单体应用克隆多份来分摊请求量均衡负载。 负载均衡就是将负载工作任务、访问量进行分摊到多个操作单元服务器、组件上执行的一套技术。 根据负载均衡发生的位置不同一般分为服务端负载均衡、客户端负载均衡。 1、服务端负载均衡指的是分摊工作发生在服务提供者一方比如常见的 Nginx 。 2、客户端负载均衡则恰好相反它指的是分摊工作发生在服务请求的一方即在发送请求之前就已经选好了由具体的哪一个实例处理请求。如下图所示 一般在微服务中都是使用客户端负载均衡。 二、IDEA 中模拟多个微服务实例 使用 idea 可以轻松的为一个 spring boot 服务创建多个微服务实例。以《Spring Cloud Alibaba——Nacos实现服务治理》的代码用例为例这里简单回顾一下 Demo 用例。 我们创建了一个电商系统有三个微服务shop-user 用户微服务、shop-product 商品微服务、shop-order 订单微服务我们使用 Nacos 实现了服务的注册发现并实现了完整的用户下单——查询商品——返回订单的微服务调用逻辑如下图所示 但上述案例只涉及到了一个订单微服务实例对应另一个商品微服务实例并没有任何负载均衡的效果为了演示负载均衡我们可以通过 idea 将shop-product 微服务启动多个实例。 方法是在启动项中添加多个 配置好第二个商品微服务实例之后我们启动 ProductApplication 和 ProductApplication2可以在 Nacos 中看到注册的商品服务实例有 2 个关于Nacos 的相关知识参考《Spring Cloud Alibaba——Nacos实现服务治理》 三、自定义负载均衡 最简单的负载均衡机制就是通过随机数根据服务提供者商品服务的实例数量来随机生成服务序号从而确定访问的实例。 我们在订单微服务中加入随机数代码 以下是完整代码  Slf4j RestController RequestMapping(/order) public class OrderController {Autowiredprivate RestTemplate restTemplate;Autowiredprivate DiscoveryClient discoveryClient;Autowiredprivate OrderService orderService;/**** 下单* param pid* return*/GetMapping(/prod/{pid})public Order order(PathVariable(pid) Integer pid) {log.info(接收到{}号商品的下单请求准备调用商品微服务, pid);// 获取服务实例列表ListServiceInstance serviceList discoveryClient.getInstances(service-product);// 生成随机下标 0 1int index new Random().nextInt(serviceList.size());// 获取实例对象ServiceInstance productService serviceList.get(index);// 调用商品微服务查询商品信息Product prod restTemplate.getForObject(http:// productService.getHost() : productService.getPort() /product/ pid, Product.class);log.info(查询到{}号商品信息内容是{}, pid, JSON.toJSONString(prod));// 下单即创建订单并保存Order order new Order();order.setUid(1);order.setUsername(测试用户);order.setPid(pid);order.setPname(prod.getPname());order.setPprice(prod.getPprice());order.setNumber(1);// 订单入库orderService.createOrder(order);log.info(创建订单成功订单信息为{}, JSON.toJSONString(order));return order;} } 启动 OrderApplication 并调用下单接口观察每次请求时商品微服务后台日志的打印情况 总共请求了四次商品实例1调用了3次商品实例2调用了1次随机数负载均衡成功。 四、Ribbon 实现负载均衡 Ribbon 是 Spring Cloud 的一个组件它可以让我们使用一个注解就能轻松搞定负载均衡。Ribbon 的默认负载均衡策略是轮询。 整合方法只需两步 1、在 RestTemplate 注入的时候添加 LoadBalanced 注解 Bean LoadBalanced public RestTemplate restTemplate() {return new RestTemplate(); } 2、修改服务调用的方法以服务名称直接代替 ip 和 端口号 GetMapping(/prod/{pid}) public Order order(PathVariable(pid) Integer pid) {log.info(接收到{}号商品的下单请求准备调用商品微服务, pid);// 调用商品微服务查询商品信息Product prod restTemplate.getForObject(http://service-product/product/ pid, Product.class);log.info(查询到{}号商品信息内容是{}, pid, JSON.toJSONString(prod));...return ...; } 演示效果略 Ribbon 的常用负载均衡策略有三个 RoundRobinRule轮询选择 service instance轮询 index选择索引对应的服务实例RandomRule随机选择一个 instance 在 index 上随机选择对应位置的服务实例 BestAvailableRule选择一个最小的并发请求的 instance 考察每个实例如果实例被 tripped 了则忽略。再选择其中 ActiveRequestsCount最小的实例 修改 Ribbon 的负载均衡策略非常简单只需要在配置文件中指定即可 # 调用的服务名称 service-product:ribbon:NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule 演示效果同第三节。 总结 项目的代码以《Spring Cloud Alibaba——Nacos实现服务治理》基础可能缺少一些中间环境建议结合阅读。 负载均衡的作用是分摊流量避免某一个服务因为请求压力而瘫痪。 负载均衡的模式一般有两种客户端负载均衡和服务端负载均衡。一般在微服务调用中都是使用客户端负载均衡。 Ribbon是实现负载均衡的重要组件它的负载均衡策略主要有三个轮询默认、随机、最小并发。
http://www.yutouwan.com/news/415892/

相关文章:

  • 展示网站模板下载电器网站建设规划书
  • 广西和住房城乡建设厅网站首页沈阳哪里可以做网站营销
  • 南京市的网站是由那几家公司做的徐州免费建站模板
  • 什么网站可以做翻译兼职网站定制要求
  • 建设银行包头分行网站网站制作建设案例
  • 西安网站建设产品每天能赚30 50元的
  • 网站开发美工的任务自助发外链网站
  • 做网站选哪家公司好网站模版源代码
  • 虚拟机网站建设与管理衡阳网页定制
  • 枣庄建设路小学网站有没有学室内设计的学校
  • 鱼台网站建设室内效果图代做网站
  • 营销型企业网站建设哪家好河北品牌网站建设
  • 东莞做微网站平台网站建设设计
  • 吕梁网站定制动地科技登录网站
  • 怎么在自己做的网站上发视频教程WordPress怎么修改根目录
  • 电子商务网站建设第三章答案优秀的国外设计网站
  • 一个专门做标题的网站wordpress主题 贴吧
  • 如何给网站刷流量wordpress商业模板破解
  • 网站开发调研问卷世界最新军事新闻最新消息
  • 网站开发转移合同会所网站建设
  • 域名到期对网站影响不允许做企业网站
  • 百度上公司做网站汕头网站制作怎么做
  • 响应式网站概况html5做网页
  • 辽宁智能网站建设价位.耐思尼克官方网站
  • 外贸公司招聘条件短视频seo优化排名
  • 网站建设与维护课难吗appstore下载安卓版
  • 网站做301跳转的好处深圳建设工程交易
  • 茶叶手机网站胶州市城乡建设局网站截图
  • 永久免费自助建网站北京大学廉政建设研究中心网站
  • 举例描述该如何布局网站关键词推广型网站建设机构