美文网首页
服务端负载均衡和客户端负载均衡(Ribbon)的区别

服务端负载均衡和客户端负载均衡(Ribbon)的区别

作者: 笨比乔治 | 来源:发表于2021-04-11 10:52 被阅读0次

1、什么是负载均衡?
负载均衡可以想象为将所有请求先聚在一起,然后根据负载均衡算法分发请求达到合理分配请求,将服务器处理请求的效率达到最大化,为微服务集群分担请求,降低系统的压力。。

负载均衡算法:

1、随机,通过随机选择服务进行执行,一般这种方式使用较少;
2、轮训,负载均衡默认实现方式,请求来之后排队处理;
3、加权轮训,通过对服务器性能的分型,给高配置,低负载的服务器分配更高的权重,均衡各个服务器的压力;
4、地址Hash,通过客户端请求的地址的HASH值取模映射进行服务器调度。
5、最小链接数;即使请求均衡了,压力不一定会均衡,最小连接数法就是根据服务器的情况,比如请求积压数等参数,将请求分配到当前压力最小的服务器上。
6、其他若干方式。

我们平时说负载均衡一般都是指服务端负载均衡,但因为分布式spring cloud分布式框架出现,也出现了客户端负载均衡这一概念,那么两者的区别是什么呢?

2、服务端负载均衡


image.png

1)、服务端负载均衡分两种:

一种是硬件负载均衡,硬件比如:F5、Array等

另一种是软件负载均衡,软件比如:LVS、Nginx等

2)、具体流程:

客户端发送请求被服务端负载均衡拦截,根据负载均衡算法分发请求到具体服务器上处理请求

3、客户端负载均衡


image.png

1)、具体流程:

1、客户端负载均衡Ribbon从注册中心Eureka Server中获取服务列表

2、客户端负载均衡Ribbon根据负载均衡算法分发请求

客户端负载均衡Ribbon在分布式系统的位置


image.png

其实客户端负载均衡Ribbon的配置就处于微服务的消费者中,消费者通过restTemplate远程调用
触发Ribbon的负载均衡

服务端负载均衡和客户端负载均衡的区别
服务端负载均衡的流程:客户端——>负载均衡服务器——>服务器
客户端负载均衡:客户端——>服务器

所以我们可以看出服务端负载均衡是通过一台服务器达到负载均衡的,
而客户端负载均衡通过自己就能达到负载均衡(它先从注册中心获取服务列表),并不需要其他服务器

相关文章

  • ribbon

    1.Ribbon 2.客户端负载均衡 3.服务端的负载均衡 4.负载均衡算法

  • 客户端负载均衡:Spring Cloud Ribbon

    Spring Cloud Ribbon属于客户端负载均衡,服务端负载均衡和客户端负载均衡最大的不同点在于服务清单所...

  • spring cloud6负载均衡

    一、负载均衡负载均衡不仅仅是ribbon,还包括zuul1,客户端的负载均衡:ribbon负载均衡作为客户端应用的...

  • SpringCloud-Ribbon负载均衡

    Ribbon是SpringCloud提供的关于客户端负载均衡组件。 负载均衡 负载均衡设备可以分为硬件负载和软件负...

  • 【Ribbon+Nginx】两者之间有什么区别

    Nginx属于服务端负载均衡,而Ribbon属于本地负载均衡。

  • 负载均衡

    负载均衡可以分为服务端负载均衡和客户端负载均衡,服务端负载均衡完全由服务端负责,客户端不需要做任何事情。客户端负载...

  • Ribbon负载均衡服务调用

    SpringCloud Ribbon是Netfix Ribbon实现的一套客户端 负载均衡的工具。 (负载均衡...

  • Ribbon客户端

    Ribbon Ribbon 是 Netflix 提供的一个基于Http和Tcp的客户段负载均衡工具 服务端负载均衡...

  • Spring Cloud Ribbon

    概念 Ribbon是一个机遇Http和Tcp的客户端负载均衡工具。基于Netflix Ribbon实现。 负载均衡...

  • Spring Cloud Ribbon源码分析

    客户端负载均衡 学习spring cloud ribbon的时候不得不提到客户端负载均衡。在客户端负载均衡中,所有...

网友评论

      本文标题:服务端负载均衡和客户端负载均衡(Ribbon)的区别

      本文链接:https://www.haomeiwen.com/subject/gvntlltx.html