一种负载均衡方法、负载均衡器和用户终端的制作方法

文档序号:9352919阅读:419来源:国知局
一种负载均衡方法、负载均衡器和用户终端的制作方法
【技术领域】
[0001] 本发明涉及计算处理领域,具体而言,涉及一种负载均衡方法、负载均衡器和用户 终端。
【背景技术】
[0002] 负载均衡器是一种把用户的任务请求分配到一个服务器集群中的任何当前轻负 载的服务器上,以处理用户发出的任务请求,从而对网络数据流量和网络带宽进行管理的 设备。在网络数据交互的过程中起着越来越重要的作用。
[0003] 现有的负载均衡器通常采用重定向服务器的方法完成负载均衡,该方法中用户首 先向负载均衡器获取服务器地址,用户再与定向出的服务器进行请求/响应交互。如传输 层DNS负载均衡和VS/DR负载均衡。重定向服务器方法中,负载均衡器将用户请求较均衡 地分发到各个服务器上,这样可以使得整个服务器集群系统具有很好的伸缩性。重定向服 务器方法通常又采用以下两种方式实现:
[0004] (1)、用户每来一次请求,先到负载均衡器申请服务器,负载均衡器根据负载均衡 算法筛选出合适的服务器后,用户与该服务器进行直接交互。用户下一次请求重新到负载 均衡器申请服务器。
[0005] (2)、用户先到负载均衡器申请服务器,负载均衡器根据负载均衡算法筛选出合适 的服务器后,用户每次请求固定与该服务器进行直接交互。
[0006] 在重定向服务器方法的上述两种实现方式分别存在如下缺点:
[0007] 第⑴种方式中,每次用户的任务请求都需要经过负载均衡器申请服务器,当用 户数量多或用户的任务请求数量多时,负载均衡器将成为瓶颈,导致用户的并发创建任务 或连接数下降。
[0008] 第(2)种方式中,负载均衡器将服务器分配给用户后,该用户对服务器发起的任 务或连接数将不受负载均衡器调度,如果用户的并发请求量大时极易超过服务器处理任务 或连接的极限,从而使负载均衡器失去负载均衡的作用。
[0009] 由上述内容可知,上述负载均衡器分配服务器的方式不够完善,影响用户建立连 接或完成任务的效率。

【发明内容】

[0010] 本发明的目的在于提供一种负载均衡方法、负载均衡器和用户终端,可以一次给 用户请求的多个任务分配服务器,减少了用户和负载均衡器的交互次数。
[0011] 第一方面,本发明实施例提供了一种负载均衡方法,所述方法包括:
[0012] 负载均衡器监测用户发送的任务请求,所述任务请求中携带有所述用户的通信需 求数量;所述通信需求数量表示所述用户需要创建的任务和/或连接数的大小;
[0013] 所述负载均衡器根据当前各个服务器的负载信息和所述通信需求数量,从服务器 集群中确定向所述用户分配的服务器以及每个服务器对应的通信数量;
[0014] 所述负载均衡器将分配的服务器的标识和每个服务器对应的通信数量发送给所 述用户,使得所述用户根据分配的所述服务器和每个服务器对应的通信数量执行通信业 务。
[0015] 结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所 述负载均衡器根据当前各个服务器的负载信息和所述通信需求数量,从服务器集群中确定 向所述用户分配的服务器以及每个服务器对应的通信数量包括:
[0016] 所述负载均衡器根据所述通信需求数量和最大任务分配数量,将所述通信需求数 量划分为一个或多个通信数量子集;
[0017] 所述负载均衡器根据当前各个服务器的负载信息,按照负载均衡原则从服务器集 群中选取每个所述通信数量子集对应的服务器;其中,所述通信数量子集包含的通信数量 小于或等于所述最大任务分配数量。
[0018] 结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所 述负载均衡器根据当前各个服务器的负载信息,按照负载均衡原则从服务器集群中选取每 个所述通信数量子集对应的服务器包括:
[0019] 所述负载均衡器根据当前各个服务器的负载参数和已经分配给所述各个服务器 的任务和/或连接数,逐一确定所述各个服务器的负荷轻重情况,按照负荷由轻到重的顺 序选取每个所述通信数量子集对应的服务器;
[0020] 所述负载均衡器根据选取的所述服务器对应的所述通信数量子集中的任务和/ 或连接数,在预设的任务列表中更新选取的所述服务器对应的已分配任务和/或连接数。
[0021] 结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所 述方法还包括:
[0022] 所述负载均衡器获取所述服务器发送的任务释放请求,所述任务释放请求中携带 有所述服务器的标识;
[0023] 所述负载均衡器根据所述服务器的标识,在预设的任务列表中更新所述服务器的 标识对应的服务器的已分配任务和/或连接数。
[0024] 第二方面,本发明实施例提供了一种负载均衡方法,所述方法包括:
[0025] 用户终端向负载均衡器发送的任务请求,所述任务请求中携带有所述用户的通信 需求数量;所述通信需求数量用于表示所述用户需要创建的任务和/或连接数的大小;
[0026] 所述用户终端接收所述负载均衡器根据当前各个服务器的负载信息和所述用户 的通信需求数量分配的服务器的标识以及每个服务器对应的通信数量;
[0027] 所述用户终端根据分配的服务器以及每个服务器对应的通信数量执行通信业务。
[0028] 第三方面,本发明实施例提供了一种负载均衡器,所述负载均衡器包括:
[0029] 检测模块,用于监测用户发送的任务请求,所述任务请求中携带有所述用户的通 信需求数量;所述通信需求数量表示所述用户需要创建的任务和/或连接数的大小;
[0030] 分配模块,用于根据当前各个服务器的负载信息和所述通信需求数量,从服务器 集群中确定向所述用户分配的服务器以及每个服务器对应的通信数量;
[0031] 发送模块,用于将分配的服务器的标识和每个服务器对应的通信数量发送给所述 用户,使得所述用户根据分配的所述服务器和每个服务器对应的通信数量执行通信业务。
[0032] 结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,所 述分配模块包括:
[0033] 通信数量子集划分单元,用于根据所述通信需求数量和最大任务分配数量,将所 述通信需求数量划分为一个或多个通信数量子集;
[0034] 服务器分配单元,用于根据当前各个服务器的负载信息,按照负载均衡原则从服 务器集群中选取每个所述通信数量子集对应的服务器;其中,所述通信数量子集包含的通 信数量小于或等于所述最大任务分配数量。
[0035] 结合第二方面,本发明实施例提供了第二方面的第二种可能的实施方式,其中,所 述服务器分配单元包括:
[0036] 服务器选择子单元,用于根据当前各个服务器的负载参数和已经分配给所述各个 服务器的任务和/或连接数,逐一确定所述各个服务器的负荷轻重情况,按照负荷由轻到 重的顺序选取每个所述通信数量子集对应的服务器;
[0037] 更新子单元,用于根据选取的所述服务器对应的所述通信数量子集中的任务和/ 或连接数,在预设的任务列表中更新选取的所述服务器对应的已分配任务和/或连接数。
[0038] 结合第二方面,本发明实施例提供了第二方面的第三种可能的实施方式,其中,所 述负载均衡器还包括:
[0039] 获取模块,用于获取所述服务器发送的任务释放请求,所述任务释放请求中携带 有所述服务器的标识;
[0040] 更新模块,用于根据所述服务器的标识,在预设的任务列表中更新所述服务器的 标识对应的服务器的已分配任务和/或连接数。
[0041] 第四方面,本发明实施例提供了一种用户终端,所述用户终端包括:
[0042] 任务请求发送模块,用于向负载均衡器发送的任务请求,所述任务请求中携带有 所述用户的通信需求数量;所述通信需求数量用于表示所述用户需要创建的任务和/或连 接数的大小;
[0043] 接收模块,用于接收所述负载均衡器根据当前各个服务器的负载信息和所述用户 的通信需求数量分配的服务器的标识以及每个服务器对应的通信数量;
[0044] 处理模块,用于根据分配的服务器以及每个服务器对应的通信数量执行通信业 务。
[0045] 本发明实施例提供的一种负载均衡方法、负载均衡器和用户终端,通过负载均衡 器根据用户发送的任务请求中携带的用户通信需求数量,从服务器集群中确定向用户分 配的服务器以及每个服务器对应的通信数量,使得负载均衡器可以实时监测用户的任务请 求,并可以在监测到用户的任务请求时,一次给用户请求的多个任务分配服务器,保证了负 载均衡器对用户任务分配服务器时所应起到的负载均衡作用,而且在用户有大量任务需要 处理而与负载均衡器进行数据交互时,减少了用户和负载均衡器之间进行交互的次数,保 证了负载均衡器的性能。
[0046] 为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合 所附附图,作详细说明如下。
【附图说明】
[0047] 为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附 图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对 范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这 些附图获得其他相关的附图。
[0048] 图1示出了本发明实施例提供的负载均衡方法所涉及的一种实施系统的结构示 意图;
[0049] 图2示出了本发明实施例1所提供的一种负载均衡方法流程图;
[0050] 图3示出了本发明实施例2所提供的一种负载均衡方法的流程图;
[0051] 图4示出了本发明实施例2所提供的另一种负载均衡方法的流程图;
[0052] 图5示出了本发明实施例2所
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1