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

网站搜索条怎么做站长工具seo综合查询论坛

网站搜索条怎么做,站长工具seo综合查询论坛,好商网,荆门哪里做网站一.负载均衡 1.问题提出 上一篇文章写了服务注册和服务发现的相关内容。这里再提出一个新问题,如果我给一个服务开了多个端口,这几个端口都可以访问服务。 例如,在上一篇文章的基础上,我又新开了9091和9092端口,现在…

一.负载均衡

1.问题提出

上一篇文章写了服务注册和服务发现的相关内容。这里再提出一个新问题,如果我给一个服务开了多个端口,这几个端口都可以访问服务。

例如,在上一篇文章的基础上,我又新开了9091和9092端口,现在重新启动服务,查看访问的端口号:

通过运行发现,无论我怎么刷新,访问的永远是一个端口:

2.LoadBalance

负载均衡是高并发高可用系统中的必不可少的关键组件。我们上面的问题就可以使用负载均衡来解决。负载均衡可以按照一定规则分配资源。

负载均衡分为服务端负载均衡客户端负载均衡

1)服务端负载均衡

在服务端采用负载均衡算法分配资源,常用的有Nginx。

2)客户端负载均衡

在客户端采用负载均衡算法分配资源,客户端从注册中心获取服务列表,在发送请求前通过负载均衡算法选择⼀个服务器,然后进行访问。

二.SpringCloudLoadBalancer

SpringCloud从2020.0.1版本开始移除了Ribbon组件,使用SpringCloudLoadBalancer组件来代替Ribbon实现客户端负载均衡

1.添加注解

给 RestTemplate 添加注解@LoadBalanced

@Configuration
public class BeanConfig {@Bean@LoadBalancedpublic RestTemplate restTemplate(){return new RestTemplate();}
}

2.修改远程调用代码

将IP和端口号改成应用名:

@Resource
RestTemplate restTemplate;@RequestMapping("/{orderId}")
public OrderInfo getOrderById(@PathVariable("orderId") Integer orderId) {OrderInfo orderInfo = orderMapper.selectByOrderId(orderId);//String url = "http://127.0.0.1:9090/product/"+ orderInfo.getProductId();String url = "http://product-service/product/"+ orderInfo.getProductId();ProductInfo productInfo = restTemplate.getForObject(url, ProductInfo.class);orderInfo.setProductInfo(productInfo);return orderInfo;
}

然后启动验证即可。

3.负载均衡策略

SpringCloudLoadBalancer仅支持两种负载均衡策略:

1)轮询:服务器轮流处理用户请求;

2)随机选择:随机选择一个服务器处理请求。

SpringCloudLoadBalancer默认的负载均衡策略是轮询,当然我们也可以将其改成随机选择,具体方法在SpringCloud官网也有介绍。

public class LoadBalancerConfig {@BeanReactorLoadBalancer<ServiceInstance> randomLoadBalancer(Environment environment,LoadBalancerClientFactory loadBalancerClientFactory) {String name = environment.getProperty(LoadBalancerClientFactory.PROPERTY_NAME);return new RandomLoadBalancer(loadBalancerClientFactory.getLazyProvider(name, ServiceInstanceListSupplier.class),name);}
}

接着在RestTemplate配置类上,使用@LoadBalancerClient或@LoadBalancerClients注解,两个注解的区别在于有没有多个服务提供者。

这两个注解有两个注解属性:

1)name:负载均衡对哪个服务生效;

2)configuration:使用哪个负载均衡策略。

@LoadBalancerClient(name = "product-service",configuration = LoadBalancerConfig.class)
@Configuration
public class BeanConfig {@Bean@LoadBalancedpublic RestTemplate restTemplate(){return new RestTemplate();}
}

http://www.dtcms.com/wzjs/200410.html

相关文章:

  • 网站上线多少钱专业地推团队
  • 网站怎么做关键词赛事资讯赛马资料
  • 哪里有网站建设企业免费下载百度到桌面
  • 个人做外贸网站平台有哪些深圳网络推广代运营
  • 未来做那个网站能致富青岛关键词优化seo
  • 深圳网站建设 公司网页关键词排名优化
  • ps做电商网站图标seo优化关键词排名优化
  • 遵义网站建设辽宁seo推广
  • 做有弹幕视频网站不属于网络推广方法
  • 可信的专业网站建设在线网页制作
  • 哈尔滨建设网官方网站推广接单平台
  • 具有口碑的柳州网站建设推荐沈阳网站关键词排名
  • 中国建筑招聘2022菏泽地网站seo
  • 中冶东北建设网站地推接单平台网
  • 石家庄房产信息网站石家庄seo网络推广
  • 宿迁网站建设公司关键词优化如何做
  • 女和女做网站百度账号免费注册
  • 新手如何做英文网站赚美元培训机构网站设计
  • 手机搭建电脑做的网站免费网站建站页面
  • 设计工作室取什么名字好南昌seo方案
  • 私人让做彩票网站吗新乡seo优化
  • 商务网站建设概念软文推广500字
  • 个人网站主页怎么做怎样在百度上发布免费广告
  • 网站制作新手网络推广平台
  • 重庆巴南网站制作揭阳新站seo方案
  • 长春做网站要多少钱企业培训课程分类
  • 宾馆在什么网站做推广效果好免费网站谁有靠谱的
  • 南昌模板建站公司营销型网站有哪些平台
  • 湖北交投建设集团网站2023全民核酸又开始了
  • 网页跳转到其它网站石家庄网站关键词推广