博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
服务端负载均衡和客户端负载均衡(Ribbon)的区别
阅读量:3925 次
发布时间:2019-05-23

本文共 855 字,大约阅读时间需要 2 分钟。

1、什么是负载均衡?

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

负载均衡算法:

1、随机,通过随机选择服务进行执行,一般这种方式使用较少;

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

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

2、服务端负载均衡在这里插入图片描述

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

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

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

2)、具体流程:

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

3、客户端负载均衡

在这里插入图片描述

1)、具体流程:

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

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

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

在这里插入图片描述

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

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

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

客户端负载均衡:客户端——>服务器

所以我们可以看出服务端负载均衡是通过一台服务器达到负载均衡的,

而客户端负载均衡通过自己就能达到负载均衡(它先从注册中心获取服务列表),并不需要其他服务器

转载地址:http://abern.baihongyu.com/

你可能感兴趣的文章
剑指 Offer 57 - II. 和为s的连续正数序列
查看>>
剑指 Offer 58 - I. 翻转单词顺序
查看>>
剑指 Offer 58 - II. 左旋转字符串
查看>>
剑指 Offer 59 - I. 滑动窗口的最大值
查看>>
剑指 Offer 59 - II. 队列的最大值
查看>>
剑指 Offer 60. n个骰子的点数
查看>>
剑指 Offer 61. 扑克牌中的顺子
查看>>
剑指 Offer 62. 圆圈中最后剩下的数字
查看>>
剑指 Offer 63. 股票的最大利润
查看>>
剑指 Offer 65. 不用加减乘除做加法
查看>>
剑指 Offer 66. 构建乘积数组
查看>>
剑指 Offer 67. 把字符串转换成整数
查看>>
剑指 Offer 68 - I. 二叉搜索树的最近公共祖先
查看>>
剑指 Offer 68 - II. 二叉树的最近公共祖先
查看>>
剑指 Offer 18. 删除链表的节点
查看>>
剑指 Offer 44. 数字序列中某一位的数字
查看>>
剑指 Offer 32 - II. 从上到下打印二叉树 II
查看>>
杭电oj-2005 第几天? C++
查看>>
杭电oj-2006 求奇数的乘积 C++
查看>>
杭电oj-2007 平方和与立方和 C++
查看>>