ToB企服应用市场:ToB评测及商务社交产业平台

标题: SpringCloud 负载均衡 [打印本页]

作者: 十念    时间: 2024-7-22 12:12
标题: SpringCloud 负载均衡
Spring Cloud 负载均衡


  
1. 概念

负责均衡 (Load Balance,简称LB),是高并发、高可用系统必不可少的关键组件。
当服务流量增大时,通常会采用增加机器的方式来进行扩容,负载均衡就是用来在多个机器大概其它资源中按照肯定的规则合理分配负载
   类似于在公司中,一个团队最开始只有一个人,后来随着工作量的增加,公司又雇用了几个人,就要思量到负载均衡,如何把工作量均衡的分配到这几个人身上,从而提高整个团队的效率!
  2. 分类

负责均衡分为服务端负载均衡和客户端负载均衡:
2.1 服务端负载均衡

在服务端进行负责均衡的算法分配,比较有名的服务端负载均衡器是Nginx,请求先到达Nginx负载均衡器,然后通过负载均衡算法,在多个服务器之间选择一个进行访问:

2.2 客户端负载均衡

在客户端进行负载均衡的算法分配.
把负责均衡的功能以库的方式集成到客户端,而不再是由一台指定的负载均衡设备集中提供
   比如Spring Cloud的Ribbon,请求发送到客户端,客户端从注册中央(如Eureka)获取服务列表,在发送请求前通过负载均衡算法选择一个服务器,然后进行访问
  

Ribbon是Spring Cloud早期的默认实现,由于如今已不再维护,最新版本的Spring Cloud负载均衡集成的是由Spring Cloud官方维护的 Spring Cloud LoadBalancer
3. Spring Cloud LoadBalancer

在SpringCloud中,我们使用Spring Cloud LoadBalancer来实现负载均衡,使用方式如下
部署好后同时启动多个product-service实例,并革新eureka-server:


可以看到新创建的几个实例都加入了注册中央!
这个时间我们来调用order-service服务,并多次革新调用,可以看到每个product-service都被均衡的调用到了

4. 负载均衡策略

负载均衡策略是一种头脑,无论是哪种负载均衡器,它们的负载均衡策略都是相似的。Spring Cloud LoadBalancer 仅支持两种负载均衡策略:轮询策略随机策略

Spring Cloud LoadBalancer 默认负载均衡策略是 轮询策略,实现的是RoundRobinLoadBalancer,如果服务的消费者需要采用随机的负载均衡策略也可以自行定义:
   参考官网所在:Spring Cloud LoadBalancer :: Spring Cloud Commons
  详细操作:

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4