集群系统负载均衡的方法和系统技术方案

技术编号:12246817 阅读:114 留言:0更新日期:2015-10-28 12:44
本发明专利技术公开了一种集群系统负载均衡的方法和系统。集群系统负载均衡的方法包括:获取各服务器节点的连接数,获取各服务器节点的处理利用率和内存占用率;根据所述连接数、处理利用率和内存占用率,计算各服务器节点的负载率;将接收到的任务请求分配给负载率最低的服务器节点。本发明专利技术采用负反馈机制,并引入服务器节点的处理利用率和内存占用率参数来表征服务器节点的负载状况,更加真实准确地反映了服务器节点的负载状况,有效克服了现有负载均衡策略不能准确反映服务器负载状况的不足,不仅能够提高集群系统整体的吞吐率,而且能够提高集群系统整体的效率和均衡。

【技术实现步骤摘要】

本专利技术涉及集群系统
,特别涉及一种集群系统负载均衡的方法和系统
技术介绍
Linux虚拟服务器(Linux Virtual Server,简称LVS)集群系统主要由负载均衡器(Load Balancer)、服务器池(Server Pool)和后端的存储设备(Storage Device)组成。其中,服务器池通过负载均衡器映射给前端,前端看到的是一个高性能、高可用的虚拟服务器,前端接收TCP/IP请求并发送给负载均衡器,负载均衡器将请求均衡的分配给服务器池中的真实服务器,即使服务器池中的某一台服务器发生了故障,对前端的服务也不会产生影响。LVS是一个开源项目,采用IP层的负载均衡调度。目前,LVS集群系统主要采用加权最小连接数的负载均衡策略。该负载均衡策略是单纯以连接数来表示服务器的负载状况,负载均衡器将前端的请求分配给具有最小连接数的服务器。经本申请专利技术人研究发现,由于不同的请求所需要的服务器资源是不同的,因此服务器的连接数并不能真实、准确地反映服务器的负载状况,在某些情况下,现有负载均衡策略反而会造成服务器超载。
技术实现思路
为了解决上述技术问题,本专利技术提供一种集群系统负载均衡的方法和系统,以克服现有负载均衡策略不能准确反映服务器负载状况的不足。为了达到本专利技术目的,本专利技术提供了一种集群系统负载均衡的方法,包括:获取各服务器节点的连接数,获取各服务器节点的处理利用率和内存占用率;根据所述连接数、处理利用率和内存占用率,计算各服务器节点的负载率;将接收到的任务请求分配给负载率最低的服务器节点。进一步地,所述获取各服务器节点的连接数具体为,负载均衡器获取自身监测并记录的各服务器节点的连接数。进一步地,所述获取各服务器节点的处理利用率和内存占用率具体为,负载均衡器接收各服务器节点发送的处理利用率和内存占用率。进一步地,根据所述连接数、处理利用率和内存占用率计算各服务器节点的负载率具体为,将服务器节点的连接数、处理利用率和内存占用率相乘,得到所述服务器节点的负载率。进一步地,所述处理利用率是指,服务器节点的处理器单位时间内处理用户进程的时间与处理核心进程的时间之比,所述内存占用率是指,服务器节点的处理器单位时间内内存资源使用量与内存资源总量之比。为了达到本专利技术目的,本专利技术还提供了一种集群系统负载均衡的系统,包括负载均衡器和服务器池,服务器池包括若干个服务器节点,负载均衡器与每个服务器节点连接,负载均衡器,用于获取各服务器节点的连接数,获取各服务器节点的处理利用率和内存占用率,根据所述连接数、处理利用率和内存占用率,计算各服务器节点的负载率,将接收到的任务请求分配给负载率最低的服务器节点。进一步地,所述负载均衡器包括请求接收模块、记录模块、性能模块、负载计算模块和请求发送模块,其中,请求接收模块,用于接收前端发送的任务请求,并将任务请求发送给请求发送模块;记录模块,用于监测并记录各服务器节点的连接数,并将各服务器节点的连接数发送给负载计算模块;性能模块,用于获取各服务器节点的处理利用率和内存占用率,并将各服务器节点的处理利用率和内存占用率发送给负载计算模块;负载计算模块,与所述记录模块和性能模块连接,用于接收所述连接数、处理利用率和内存占用率,根据连接数、处理利用率和内存占用率计算各服务器节点的负载率,将负载率最低的服务器节点发送给请求发送模块;请求发送模块,与所述请求接收模块和负载计算模块连接,用于接收所述任务请求和负载率最低的服务器节点,将所述任务请求发送给所述负载率最低的服务器节点。进一步地,所述服务器节点包括任务接收模块、任务处理模块和监测模块,其中,任务接收模块,与负载均衡器的请求发送模块连接,用于接收所述任务请求,将任务请求发送给任务处理模块;任务处理模块,与任务接收模块连接,用于接收所述任务请求,对任务进行处理;监测模块,与任务处理模块和负载均衡器的性能模块连接,用于实时获取任务处理模块的处理利用率和内存占用率,并将处理利用率和内存占用率发送给负载均衡器的性能丰吴块。进一步地,所述根据连接数、处理利用率和内存占用率计算各服务器节点的负载率具体为,将服务器节点的连接数、处理利用率和内存占用率相乘,得到所述服务器节点的负载率。进一步地,所述处理利用率是指,服务器节点的处理器单位时间内处理用户进程的时间与处理核心进程的时间之比,所述内存占用率是指,服务器节点的处理器单位时间内内存资源使用量与内存资源总量之比。本专利技术提供了一种集群系统负载均衡的方法和系统,采用负反馈机制,并引入服务器节点的处理利用率和内存占用率参数来表征服务器节点的负载状况,更加真实准确地反映了服务器节点的负载状况,有效克服了现有负载均衡策略不能准确反映服务器负载状况的不足,不仅能够提高集群系统整体的吞吐率,而且能够提高集群系统整体的效率和均衡。本专利技术的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。【附图说明】附图用来提供对本专利技术技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本专利技术的技术方案,并不构成对本专利技术技术方案的限制。图1为本专利技术集群系统负载均衡的方法的处理流程图;图2为本专利技术集群系统负载均衡的系统的结构示意图;图3为本专利技术负载均衡器和服务器节点的结构示意图。【具体实施方式】为使本专利技术的目的、技术方案和优点更加清楚明白,下文中将结合附图对本专利技术的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。经本申请专利技术人研究发现,现有负载均衡策略中采用的连接数参数并不能真实、准确地反映服务器的负载状况,在某些情况下,现有负载均衡策略反而会造成服务器超载。由于不同的任务请求所需要的服务器资源是不同的,因此存在服务器节点的连接数少但其处理利用率或内存占用率非常高的情况。在该状况下,服务器节点实际上不具有即时处理能力,新的任务请求只能等到服务器节点完成相应处理并释放资源后才能得到处理。显然,如果服务器节点在该状况下仍持续接收到新任务请求,不仅会导致服务器节点持续超载,而且有可能导致服务器节点处于假死状态。为此,本专利技术提出一种负反馈机制的负载均衡方法,应用于LVS集群系统,采用连接数、处理利用率和内存占用率等参数来真实、准确地反映服务器节点的负载状况,有效克服现有负载均衡策略可能造成服务器超载的技术缺陷。图1为本专利技术集群系统负载均衡的方法的处理流程图。如图1所示,本专利技术集群系统负载均衡的方法包括:步骤1、获取各服务器节点的连接数,获取各服务器节点的处理利用率和内存占用率;步骤2、根据连接数、处理利用率和内存占用率,计算各服务器节点的负载率;步骤3、将接收到的任务请求分配给负载率最低的服务器节点。本专利技术中,处理利用率是指,处理器单位时间内处理用户进程的时间与处理核心进程的时间之比,处理利用率越低,表明处理器当前越空闲,而处理利用率越本文档来自技高网...

【技术保护点】
一种集群系统负载均衡的方法,其特征在于,包括:获取各服务器节点的连接数,获取各服务器节点的处理利用率和内存占用率;根据所述连接数、处理利用率和内存占用率,计算各服务器节点的负载率;将接收到的任务请求分配给负载率最低的服务器节点。

【技术特征摘要】

【专利技术属性】
技术研发人员:梁吉林
申请(专利权)人:浪潮北京电子信息产业有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1