【计网/负载均衡】负载均衡概览

一. 什么是负载均衡

负载均衡——load balance,  正如它的名字一般,是把负载给均衡了。通俗地讲,就是把原本交给一台服务器的工作内容,分摊给多台服务器

通过负载均衡,我们就能扩展我们网络设备的带宽,就能增加我们的吞吐量。

(注意带宽和吞吐量的区别:带宽是链路的属性吞吐量是网络设备单位时间内传输/接受的数据量, 一般而言我们网络设备的吞吐量一定是小于我们链路的带宽的)

二. 负载均衡分类

负载均衡主要有两种分类方式:

·根据利用软件还是硬件来实现负载均衡分

  1.  软件:在我们的服务器上安装负载均衡的软件。常见的有LVS(Linux Virutal System)、Nginx、HAproxy
  2.  硬件:这个看上去比较简单,没有什么是氪金解决不了的,服务器少我们买就是了。

·根据是针对本地还是全局服务器来分

  1.  本地只针对本地范围的服务器群,优点是比较方便;比如你要在服务器群上新增一个服务器,只要在本地添加一台服务器就行了。
  2.  全局:全局负载均衡主要解决全球用户只需一个域名或IP地址就能访问到离自己距离最近的服务器获得最快的访问速度,它在多区域都拥有自己的服务器站点。

(很明显全局负载均衡比本地负载均衡要更加好

三. 负载均衡模式

  1.  NAT模式:NAT(Network Address Translation), 网络地址转换,通过修改报文的ip,使得私有ip能访问外网,使得外网的用户也能访问内网的私有ip主机。所以我们就可以通过nat软件(交换机上)来帮我们选择服务器来实现负载均衡了。
  2. TUN技术:TUN(ip tunning)ip隧道技术。NAT有一个很大的缺点就是客户端发送给服务器的报文和服务器返回给客户端的报文都要经过我的负载均衡器,所以我的负载均衡器很容易成为我们的性能瓶颈。更加重要的是,我们客户端请求连接的报文大小,肯定是远远小于我们服务器返回的报文大小的。因此我们引入了TUN。使用TUN的好处是它只处理我们客户端发送给我们服务器的请求连接的报文,至于服务器要发送给客户端的报文,是直接通过我们的internet。所以我们的TUN要求我们的服务器能够与我们的外部网络相连。
  3. DR技术:DR技术,即直接路由技术。这是基于TUN技术而生成的一种更加好的技术。考虑到我们建立ip tunnl对于服务器而言也是一个很大的考验,所以我们干脆就不建立ip tunnl了。服务器返回给我们用户的报文再通过一个路由器转发出去。注意我们自治系统(AS)中的所有服务器都得使用同一个VIP(virtual ip)——你ping到的不是真实地址的原因就在于此。

四. 负载均衡算法

  1.  轮询调度算法(Round Robin,也称rr):按照轮询顺序分配服务器。
  2. 加权轮询调度(weight round robin,也称wrr):所谓的权重就是当前服务器的性能。这使得我们在轮询的过程中考虑到了服务器的负担,所以比我们普通的轮询更加合理。
  3. 最小连接调度(Least Connections,也称lc):  这里我们也是考虑了服务器的性能,只不过是按照连接数来定,连接少的服务器自然会优先得到任务。
  4. 加权最少连接调度(Weight Least Connections, 也称wlc):凭什么我们需要让连接少的服务器优先连接?万一那个连接数最少的服务器性能本身就最差呢?所以我们引入了一个新的权重。这个权重是由管理员给的,我们负载均衡器在判断的时候还得考虑这个权重。
  5. (To be continued..)
发布了137 篇原创文章 · 获赞 19 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_43338695/article/details/102964461
今日推荐