APP下载

试论网络服务器的负载均衡实现

2015-03-25

电子测试 2015年19期
关键词:状况服务器状态

(南京医科大学附属南京医院(南京市第一医院),210029)

试论网络服务器的负载均衡实现

李 烜

(南京医科大学附属南京医院(南京市第一医院),210029)

文章首先对服务器负载均衡的基本概念进行了分析,并对负载均衡的类型以及算法分类进行了概述,然后研究了在集群系统网络服务器中对负载状态进行评价的方法以及对负载状况进行获取的手段,最后分析了网络服务器实现负载均衡的几点策略,值得重视。

网络服务器;负载均衡;实现

在网络技术不断发展与完善的背景下,各类网站的访问量呈现出了显著增高的趋势,在网络服务器的运行过程中,负载的急速增长成为了影响网络访问质量与访问速度的重要因素之一。为解决该问题,关键在于实现网络服务器的负载均衡。通过引入负载均衡技术的方式,能够将网络服务系统自多台服务器对称运行的方式转变为服务器集合运行。在这一集成系统当中,每台服务器均具有等价地位,能够独立面向外部环境提供服务。除此以外,还能够通过应用负载分担技术的方式,将外界发送的请求数据据均匀分配至相应的服务器系统终端上。通过上述方式,能够解决大量用户同时段内并发访问而出现的问题,确保网络服务器访问质量的理想。

1 服务器负载均衡简述

1.1 负载均衡的含义

负载均衡以当前固有的网络结构为基本依据,在基础之上提供一种有效并且成本低廉的方法,能够对网络服务器的带宽进行有效拓展,同时提高服务器吞吐量,是优化网络服务器数据处理能力的重要手段之一,并且在改善网络系统运行灵活性与适应性方面也有中药的意义。实现负载均衡所需要完成的工作任务包括以下几个方面:

其一,需要面向网络服务器用户提供更佳、更具人性化特点的访问质量;

其二,需要进一步改善服务器响应速度,满足用户操作需求;

其三,需要提高网络服务器以及其他资源的利用效率;

其四,需要将单个重负载的运算任务分解至多台节点服务器上,并以并行方式进行处理,通过这种流程,能够显著提高网络服务器系统的数据处理能力,确保最终结果能够尽快的返回至用户端;

在网络服务器实现负载均衡的过程当中,负载均衡的工作机制可以划分为两种类型,分别为静态模式下的负载均衡以及动态模式下的负载均衡。其中,前者是指根据预先确定的轮值方案,将任务按照方案要求分解至相应的节点当中,而后者则是指借助于一些工具软件对数据包进行分解,从而准确评估网络系统内的数据流量的真实状况。

1.2 负载均衡类型及算法

在网络服务器实现负载均衡的过程当中,算法会对负载均衡的实现情况产生非常直接的影响,当前技术支持下,实际应用中比较常见的算法有两种类型,分别为静态负载均衡算法以及动态负载均衡算法。其中,对于静态算法而言,该算法适用于负载量能够预知并且具有同构数据的集群系统,实际应用中具有操作简便与灵活的特点;对于动态算法而言,该算法使用范围相对较广的网络服务器集群系统,在应用中必须对服务器的使用情况以及对各个指令的执行情况进行收集,在开销上明显高于静态算法,但其优势是能够对集群系统的负载情况进行实时性的反应,因此在具体应用中需要综合考虑,选择最佳的算法方案。

2 负载状态评价与负载状况获取

2.1 负载状态评价分析

当前对于网络服务器及其集成系统而言,在实现负载均衡过程当中应用技术所面临的问题主要包括三个方面,其一是针对网络服务器负载状况的定义,其二是针对负载状况信息的获取方式,其三是针对获取负载状况信息后的处理。在网络服务器实现负载均衡的过程当中,负载状况的评价可以由三类指标构成,分别为统计类指标、静态类指标、以及动态类指标。其中,统计类指标可作为网络服务器所对应网站进行扩充的基本依据;静态类指标则主要受到资源的影响,具有数字化、量化评价的特点;动态类指标则通过对探测结果的动态使用劲儿得到有关负载状态的评价结果。

2.2 负载状况获取分析

在网络服务器系统当中,各个服务器在决定新用户访问请求取/舍时需要参考所有服务器的负载水平。换言之,对于单个服务器而言,在决策新用户访问请求时必须了解其他服务器在同一状态下的负载水平。因此,对于其他服务器而言,需要具备将自身负载状况通知其他服务器的能力。目前技术条件支持下,对负载状况的探知可以通过如下几种途径实现:

其一,建立在Agent技术的基础之上,遵循网管协议Snmp进行探知:即在需要了解负载状况的服务器上运行预先设计的Agent模块,定时通知分配器,从而得到网络服务器运行负载的确切情况;

其二,基于第三方软件获取网络服务器负载情况:当前一些第三方工作软件已经可支持对网络服务器负载运行情况的获取,但选用第三方软件时要求分配器有与之相对应的接口,以便能够对分配结果进行相应的调整;

其三,基于自主开发软件的方式主动获取服务器负载水平:在认知网络服务器相应负载水平的过程中,最简单与直接的集成方法就是自主进行软件开发,在分配器的敢于下对服务器负载进行探测分析。

网络服务器负载状况的获取方式可以分为两类,分别为周期性获取、非周期性获取。其中,前者需要定期通过广播或直接询问的方式了解网络服务器的负载状态,而后者则仅在网络服务器处于空闲/过载运行状态下时,以广播或直接询问的方式了解负载状态。在实际工作中,需要结合网络服务器系统的整体开销,考虑负载状态的实时性,选择最佳的获取方式。

3 网络服务器负载均衡的应用及实现

从实际应用的角度上来看,我们最终的目标不仅仅局限在将客户端的服务请求平均分配给内部服务器,而是需要性能更具优势的服务器接收更加多的服务请求,相对应的,一台处理服务器请求相对较少的网络服务器也需要分配更多的服务请求,针对出现故障的网络服务器,则需要在故障得到恢复后方可继续接受服务请求。

在分析选择网络服务器负载均衡算法的过程当中,必须对各个网络服务器的性能进行综合考虑,结合网络服务器在硬件配置以及处理能力方面的特点,为各个网络服务器分配可适应的权值,确保其能够接受在权值范围内服务器请求。

同时,在负载均衡的应用中,还需要考虑到各个网络服务器在响应速度方面的均衡实现。实际应用中,负载均衡设备需要面向集群系统内部各个网络服务器发送探测指令,然后根据网络服务器对探测请求的响应速度决定将服务请求分配至哪一个网络服务器当中。应用这种负载均衡算法能够较好的反映集群系统内部所有网络服务器的运行状态,但也存在一定的局限性,即这种响应探测请求时间最短的响应时间所指的是负载均衡设备与服务器间的最快响应时间,而不是客户端与服务器间的最快响应时间。

最后,在对网络服务器负载均衡进行分析的过程当中还应考虑各服务器的最少连接数均衡。因为每一次请求在服务器的停留的时间差异有可能是非常大的,因此,随着工作时间加长,每一台服务器上的进程可能会产生极大的差异,简单的轮循不能保证真正意义上的均衡。故而,当集群系统中网络服务器接收到新用户请求时,将当前的请求分配给当前连接数最少的服务器。“最小连接数算法”则可以保证每一次访问请求都分配给当前处理进程最小的服务器,从而使均衡更加动态化,更加符合实际情况,负载更加均衡。

4 结束语

对于网络服务器而言,负载均衡技术的最根本目标是根据系统内部各个处理机的性能表现以及负载水平来对工作任务与指令进行分配,在这一过程当中,服务器节点的处理能力以及在该状态下的负载量会对服务器负载变化产生直接影响。网络服务器中负载量具有动态性的特点,为了明确该参数首先必须构建一个动态性的调度策略,确保整个网络服务器系统在长时间运行状态下负载不发生较大程度的倾斜,并且在负载均衡系统进行决策时首先考虑整个系统的负载状态,确保所获取信息的最新性。以上即根据该思路,对网络服务器负载均衡的实现问题展开了详细探讨与研究,望能够引起各方关注与重视。

[1] 蒋文保,郝双,戴一奇等.高速网络入侵检测系统负载均衡策略与算法分析[J].清华大学学报(自然科学版),2006,46(1):106-110.

[2] 刘琪,袁坚,山秀明等.3G/WLAN网络中基于终端移动与业务认知的动态负载均衡机制[J].计算机学报,2010,33(9):1569-1579.

李烜,男,1982.04-,本科,信息系统与信息管理专业,南京医科大学附属南京医院(南京市第一医院)信息科,助理工程师,主要从事医院his系统维护,机房服务器管理,网络设备管理工作。

On the load balance of network server

Li Xuan
(Nanjing Hospital Affiliated to Nanjing Medical University (Nanjing First Hospital),210029)

Firstly,this paper analyzes the basic concept of server load balancing,and summarizes the types of load balancing and the method of the load balancing in cluster system,and analyzes the methods of load balancing.

network server;load balance;implementation

猜你喜欢

状况服务器状态
声敏感患者的焦虑抑郁状况调查
通信控制服务器(CCS)维护终端的设计与实现
2019年中国国际收支状况依然会保持稳健
状态联想
生命的另一种状态
第五节 2015年法学专业就业状况
中国服务器市场份额出炉
得形忘意的服务器标准
计算机网络安全服务器入侵与防御
坚持是成功前的状态