什么是网络负载均衡,在网络中都有哪些应用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是网络负载均衡,在网络中都有哪些应用相关的知识,希望对你有一定的参考价值。
负载均衡是由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其他服务器的辅助。通过某种负载分担技术,将外部发送来的请求均匀分配到对称结构中的某一台服务器上,而接收到请求的服务器独立地回应客户的请求。均衡负载能够平均分配客户请求到服务器列阵,籍此提供快速获取重要数据,解决大量并发访问服务问题。软件负载
基于特定服务器软件的负载均衡
---- 这种技术是利用网络协议的重定向功能来实现负载均衡的,例如在Http协议中支持定位指令,接收到这个指令的浏览器将自动重定向到该指令指明的另一个URL上。由于和执行服务请求相比,发送定位指令对Web服务器的负载要小得多,因此可以根据这个功能来设计一种负载均衡的服务器。一旦Web服务器认为自己的负载较大,它就不再直接发送回浏览器请求的网页,而是送回一个定位指令,让浏览器去服务器集群中的其他服务器上获得所需要的网页。在这种方式下,服务器本身必须支持这种功能,然而具体实现起来却有很多困难,例如一台服务器如何能保证它重定向过的服务器是比较空闲的,并且不会再次发送定位指令?定位指令和浏览器都没有这方面的支持能力,这样很容易在浏览器上形成一种死循环。因此这种方式实际应用当中并不多见,使用这种方式实现的服务器集群软件也较少。
DNS负载
基于DNS的负载均衡
---- DNS负载均衡技术是最早的负载均衡解决方案,它是通过DNS服务中的随机名字解析来实现的,在DNS服务器中,可以为多个不同的地址配置同一个名字,而最终查询这个名字的客户机将在解析这个名字时得到其中的一个地址。因此,对于同一个名字,不同的客户机会得到不同的地址,它们也就访问不同地址上的Web服务器,从而达到负载均衡的目的。
---- 这种技术的优点是,实现简单、实施容易、成本低、适用于大多数TCP/IP应用;但是,其缺点也非常明显,首先这种方案不是真正意义上的负载均衡,DNS服务器将Http请求平均地分配到后台的Web服务器上,而不考虑每个Web服务器当前的负载情况;如果后台的Web服务器的配置和处理能力不同,最慢的Web服务器将成为系统的瓶颈,处理能力强的服务器不能充分发挥作用;其次未考虑容错,如果后台的某台Web服务器出现故障,DNS服务器仍然会把DNS请求分配到这台故障服务器上,导致不能响应客户端。最后一点是致命的,有可能造成相当一部分客户不能享受Web服务,并且由于DNS缓存的原因,所造成的后果要持续相当长一段时间(一般DNS的刷新周期约为24小时)。所以在国外最新的建设中心Web站点方案中,已经很少采用这种方案了。
交换负载
.基于四层交换技术的负载均衡
---- 这种技术是在第四层交换机上设置Web服务的虚拟IP地址,这个虚拟IP地址是DNS服务器中解析到的Web服务器的IP地址,对客户端是可见的。当客户访问此Web应用时,客户端的Http请求会先被第四层交换机接收到,它将基于第四层交换技术实时检测后台Web服务器的负载,根据设定的算法进行快速交换。常见的算法有轮询、加权、最少连接、随机和响应时间等。
七层负载
基于七层交换技术的负载均衡
---- 基于第七层交换的负载均衡技术主要用于实现Web应用的负载平衡和服务质量保证。它与第四层交换机比较起来有许多优势:第七层交换机不仅能检查TCP/IP数据包的TCP和UDP端口号,从而转发给后台的某台服务器来处理,而且能从会话层以上来分析Http请求的URL,根据URL的不同将不同的Http请求交给不同的服务器来处理(可以具体到某一类文件,直至某一个文件),甚至同一个URL请求可以让多个服务器来响应以分担负载(当客户访问某一个URL,发起Http请求时,它实际上要与服务器建立多个会话连接,得到多个对象,例如.txt/.gif/.jpg文档,当这些对象都下载到本地后,才组成一个完整的页面)。
---- 以上几种负载均衡技术主要应用于一个站点内的服务器群,但是由于一个站点接入Internet的带宽是有限的,因此可以把负载均衡技术开始应用于不同的网络站点之间,这就是站点镜像技术,站点镜像技术实际上利用了DNS负载均衡技术。 参考技术A 只有在客户端提交MapReduce任务的时候才有可能获取本地文件,当MapReduce执行的时候,Map和Redure任务都是分发到不同的节点运...
干货|什么是负载均衡?负载均衡原理详解
负载均衡是高可用网络基础架构的一个关键组成部分,有了负载均衡,我们通常可以将我们的应用服务器部署多台,然后通过负载均衡将用户的请求分发到不同的服务器用来提高网站、应用、数据库或其他服务的性能以及可靠性。
下面看一个不使用负载均衡的Web架构,如下图所示。
不使用负载均衡的Web架构
在上图中,客户端之间通过网络与Web服务端相连,假想如果Web服务器宕机,那么用户访问网站时将得不到任何响应,出现单点故障问题。即使服务器可以正常工作,如果很多用户同时访问服务器,超过服务器的处理能力,那么会出现响应速度慢或者无法连接的情况,这也是用户无法接受的。
引入负载均衡可以有效解决上述问题,它可以将负载(工作任务)进行平衡、分摊到多个执行单元上运行。例如,Web服务器、FTP服务器、企业关键应用服务器和其他主要任务服务器等,协同完成工作任务。
负载均衡分为硬件负载均衡和软件负载均衡两种,具体介绍如下:
· 硬件负载均衡的解决方案就是直接在服务器和外部网络间安装负载均衡设备,通常这种设备称为负载均衡器。
由专门的设备完成专门的任务,独立于操作系统,整体性能得到大量提高,加上多样化的负载均衡策略,智能化的流量统计,可达到最佳的负载均衡效果。
· 软件负载均衡的解决方案是指在一台或多台服务器相应的操作系统上安装一个或多个附加软件来实现负载均衡,如DNS Load Balance,CheckPoint Firewall-1 ConnectControl等,它的优点是基于特定环境,配置简单,使用灵活,成本低廉,可以满足一般的负载均衡需求。
无论哪种负载均衡策略,都是为了系统高可用、缓解网络压力以及扩容机器处理能力。下面看一个使用负载均衡的Web架构,具体如下图所示。
在上图中,负载均衡器会维护一个可用的服务清单,通过心跳检测来剔除故障的服务端节点以保证服务器清单中都是可以正常访问的服务器。
当客户端借助网络发送请求到负载均衡器时,负载均衡器会按照某种算法,从维护的服务清单里面选择一个服务器,并将客户端请求转发到指定的服务器,从而提高系统的可用性和稳定性。
觉得有用的小伙伴可以分享转发
给更多需要的人看到哦~
END
以上是关于什么是网络负载均衡,在网络中都有哪些应用的主要内容,如果未能解决你的问题,请参考以下文章