CN106385459B - 一种连接请求报文的分配方法及装置 - Google Patents

一种连接请求报文的分配方法及装置 Download PDF

Info

Publication number
CN106385459B
CN106385459B CN201610916167.1A CN201610916167A CN106385459B CN 106385459 B CN106385459 B CN 106385459B CN 201610916167 A CN201610916167 A CN 201610916167A CN 106385459 B CN106385459 B CN 106385459B
Authority
CN
China
Prior art keywords
connection
time period
preset time
load balancer
time point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610916167.1A
Other languages
English (en)
Other versions
CN106385459A (zh
Inventor
郑言
孙艳杰
丁金岩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou DPtech Information Technology Co Ltd
Original Assignee
Hangzhou DPTech Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou DPTech Technologies Co Ltd filed Critical Hangzhou DPTech Technologies Co Ltd
Priority to CN201610916167.1A priority Critical patent/CN106385459B/zh
Publication of CN106385459A publication Critical patent/CN106385459A/zh
Application granted granted Critical
Publication of CN106385459B publication Critical patent/CN106385459B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1023Server selection for load balancing based on a hash applied to IP addresses or costs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1029Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供一种连接请求报文的分配方法及装置,应用在负载均衡器中,负载均衡器对来自客户端的连接请求报文进行分配,方法包括:当确定将连接请求报文分配到目标服务器且并未发送给目标服务器时,判断待发送连接请求报文的第一时间点是否处于第一预设时间段内;当第一时间点处于第一预设时间段时,判断第一连接数量是否小于或者等于第一连接阈值,第一连接数量为负载均衡器记录的已发送到目标服务器上的连接请求报文的数量,第一连接阈值为负载均衡器在第二预设时间段结束时确定的;当第一连接数量小于或者等于第一连接阈值时,将连接请求报文发送到目标服务器。应用本发明实施例,解决了目标服务器无法承受,终止响应报文的问题。

Description

一种连接请求报文的分配方法及装置
技术领域
本发明涉及网络通信技术领域,尤其涉及一种连接请求报文的分配方法及装置。
背景技术
在网络环境中,负载均衡器被广泛应用于各大服务器集群中,通常负载均衡器将来自客户端的连接请求报文通过预设报文分配算法分配到与负载均衡器相连接的服务器中,预设报文分配算法包括轮询或者最小连接数算法等。
现有技术方案中,当与负载均衡器连接的服务器性能不足时,需要新增具有相同业务处理功能的服务器,若分配到新增的服务器上的连接请求报文过多,导致该新增的服务器无法承受而终止响应报文。
发明内容
有鉴于此,本发明提供一种连接请求报文的分配方法及装置,当负载均衡器分配到目标服务器上的连接请求报文过多时,以解决目标服务器无法承受,导致目标服务器终止响应报文的问题。
为实现上述目的,本发明提供技术方案如下:
根据本发明的第一方面,提出了一种连接请求报文的分配方法,应用在负载均衡器中,所述负载均衡器对来自客户端的连接请求报文进行分配,所述方法包括:
当确定将所述连接请求报文分配到目标服务器且并未发送给所述目标服务器时,判断待发送所述连接请求报文的第一时间点是否处于第一预设时间段内;
当所述第一时间点处于第一预设时间段时,判断第一连接数量是否小于或者等于第一连接阈值,所述第一连接数量为负载均衡器记录的已发送到所述目标服务器上的连接请求报文的数量,所述第一连接阈值为所述负载均衡器在第二预设时间段结束时确定的;
当所述第一连接数量小于或者等于所述第一连接阈值时,将所述连接请求报文发送到所述目标服务器。
根据本发明的第二方面,提出了一种连接请求报文的分配装置,包括:
时间段判断模块,用于当确定将所述连接请求报文分配到目标服务器且并未发送给所述目标服务器时,判断待发送所述连接请求报文的第一时间点是否处于第一预设时间段内;
阈值判断模块,用于当所述时间段判断模块中的所述第一时间点处于第一预设时间段时,判断第一连接数量是否小于或者等于第一连接阈值,所述第一连接数量为负载均衡器记录的已发送到所述目标服务器上的连接请求报文的数量,所述第一连接阈值为所述负载均衡器在第二预设时间段结束时确定的;
第一报文发送模块,用于当所述阈值判断模块中的所述第一连接数量小于或者等于所述第一连接阈值时,将所述连接请求报文发送到所述目标服务器。
由以上技术方案可见,当负载均衡器确定将连接请求报文分配到目标服务器且并未发送给目标服务器时,负载均衡器基于第一预设时间段及第一连接阈值判断是否将该连接请求报文发送给目标服务器,避免了目标服务器无法承受,解决了目标服务器终止响应报文的问题。
附图说明
图1是本发明提供的连接请求报文的分配方法所适用的网络架构图;
图2是本发明提供的一个连接请求报文的分配方法的实施例流程图;
图3是本发明提供的另一个连接请求报文的分配方法的实施例流程图;
图4A是本发明提供的再一个连接请求报文的分配方法的实施例流程图;
图4B是图4A所示实施例示出的第二连接阈值在预设时长内的分布图;
图5是本发明提供的一种负载均衡器的硬件结构图;
图6是本发明提供的一个连接请求报文的分配装置的实施例框图;
图7是本发明提供的另一个连接请求报文的分配装置的实施例框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
在本发明使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本发明可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本发明范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
图1是本发明提供的连接请求报文的分配方法所适用的网络架构图,如图1所示,该网络架构图中包括:客户端11、负载均衡器12、管理端13、互联网14、服务器15、服务器16、服务器17、服务器18。其中,客户端11安装在个人计算机(Personal Computer,PC)上,客户端11还可以安装在手机、平板电脑、智能手表等终端设备上;管理端13为安装了交互软件的PC,管理人员可以通过交互软件对负载均衡器12中的配置信息进行配置及获取。客户端11、负载均衡器12、管理端13通过互联网14建立连接。服务器15、服务器16、服务器17、服务器18为4台具有相同业务处理功能的服务器,服务器18为网络架构中新增的一台服务器。
当负载均衡器12接收到客户端11发送的连接请求报文时,负载均衡器12通过预设报文分配算法将连接请求报文分配到服务器15、服务器16、服务器17、服务器18中,预设报文分配算法包括轮询、最小连接数、哈希散列、最小响应时间等算法。当负载均衡器12通过预设报文分配算法确定将该连接请求报文分配到服务器18且并未发送给服务器18时,负载均衡器12记录当前待发送时间点为第一时间点并判断第一时间点是否处于第一预设时间段,负载均衡器12还预设了第二预设时间段及第三预设时间段。第一预设时间段、第二预设时间段及第三预设时间段可以为连续且相同的时间段,在一实施例中,第一预设时间段、第二预设时间段及第三预设时间段分别为N+1秒至N+2秒、N+0秒至N+1秒、N+2秒至N+3秒的时间段,其中,第二时间点≤N≤(预设时长-3秒),N为第二时间点至(预设时长-3秒)时间区间内的任意时间点,N的最小单位为秒或者微妙,N的最小单位由负载均衡器12的出厂配置所决定。第二时间点为负载均衡器12获取到服务器18的二元组信息时的时间点,二元组信息为服务器18的IP地址及端口,负载均衡器12获取服务器18的二元组信息的方法可以为:管理人员通过管理端13上安装的交互软件输入服务器18的二元组信息,使得负载均衡器12通过互联网14接收到携带服务器18的二元组信息的报文,并根据该报文解析出服务器18的二元组信息。预设时长同样可以由管理人员通过管理端13上安装的交互软件进行配置,预设时长为服务器18可以正常接收负载均衡器12分配的连接请求报文所需的适应时长,该预设时长可以由管理人员根据服务器18的配置及测试结果确定。当负载均衡器12判断第一时间点处于第一预设时间段N+1秒至N+2秒内时,负载均衡器12判断第一连接数量是否小于或者等于第一连接阈值,第一连接数量为负载均衡器12记录的已发送到服务器18上的连接请求报文的数量,第一连接阈值为负载均衡器12在第二预设时间段结束的N+1秒时确定的。当第一连接数量小于或者等于第一连接阈值时,负载均衡器12将该连接请求报文发送到服务器18中。通过本发明实施例,当负载均衡器12通过预设报文分配算法分配到服务器18上的连接请求报文的数量过多时,负载均衡器12基于第一连接阈值限定了发送到服务器18中的连接请求报文的数量,解决了服务器18无法承受,导致服务器18终止响应报文的问题。
为对本发明进行进一步说明,提供下列实施例:
图2是本发明提供的一个连接请求报文的分配方法的实施例流程图,本发明实施例应用在负载均衡器中,负载均衡器通过预设报文分配算法对来自客户端发送的连接请求报文进行分配,下面结合图1、图2,以负载均衡器为负载均衡器12、目标服务器为服务器18进行示例性说明,如图2所示,包括步骤如下:
步骤201:当确定将连接请求报文分配到目标服务器且并未发送给目标服务器时,判断待发送连接请求报文的第一时间点是否处于第一预设时间段内。
步骤202:当第一时间点处于第一预设时间段时,判断第一连接数量是否小于或者等于第一连接阈值,第一连接数量为负载均衡器记录的已发送到目标服务器上的连接请求报文的数量,第一连接阈值为负载均衡器在第二预设时间段结束时确定的,当第一连接数量小于或者等于第一连接阈值时,执行步骤203;当第一连接数量大于第一连接阈值时,执行步骤204。
步骤203:将连接请求报文发送到目标服务器。
步骤204:负载均衡器将连接请求报文分配给除目标服务器以外的与负载均衡器相连接的其他服务器。
在步骤201中,在一实施例中,预设报文分配算法包括轮询、最小连接数、哈希散列、最小响应时间等算法,本领域技术人员可以理解的时,此处负载均衡器12通过预设报文分配算法对连接请求报文进行分配的过程为现有技术,故不作详述。负载均衡器12还预设了第二预设时间段及第三预设时间段。第一预设时间段、第二预设时间段及第三预设时间段为连续且相同的时间段,在一实施例中,第一预设时间段、第二预设时间段及第三预设时间段分别为N+1秒至N+2秒、N+0秒至N+1秒、N+2秒至N+3秒的时间段,其中,第二时间点≤N≤(预设时长-3秒),N为第二时间点至(预设时长-3秒)时间区间内的任意时间点,N的最小单位为秒或者微妙,N的最小单位由负载均衡器12的出厂配置所决定。第二时间点为负载均衡器12获取到服务器18的二元组信息时的时间点,二元组信息为服务器18的IP地址及端口,负载均衡器12获取服务器18的二元组信息的方法可以为:管理人员通过管理端13上安装的交互软件输入服务器18的二元组信息,使得负载均衡器12通过互联网14接收到携带服务器18的二元组信息的报文,并根据该报文解析出服务器18的二元组信息,二元组信息例如为192.168.1.1、80。预设时长同样可以由管理人员通过管理端13上安装的交互软件进行配置,预设时长为服务器18可以正常接收负载均衡器12分配的连接请求报文所需的适应时长,该预设时长可以由管理人员根据服务器18的自身配置及测试结果确定,预设时长例如为10秒。以第一时间点为12:00:05:34,N为12:00:04:00为例对负载均衡器12判断第一时间点是否处于第一预设时间段的方法进行示例性说明,由N为12:00:04:00确定第一预设时间段为12:00:05:00至12:00:06:00,第一时间点12:00:05:34处于第一预设时间段12:00:05:00至12:00:06:00内。本领域技术人员可以理解的是,此处负载均衡器12判断第一时间点是否处于第一预设时间段的方法仅为示例性说明,其并不能形成对本发明的限制。
在步骤202中,在一实施例中,第一连接数量为负载均衡器12记录的已发送到服务器18上的连接请求报文的数量,第一连接阈值为负载均衡器12在第二预设时间段结束的N+1秒时确定的,当第一连接数量小于或者等于第一连接阈值时,执行步骤203;当第一连接数量大于第一连接阈值时,执行步骤204。以第一连接阈值为16进行示例性说明:例如,若第一连接数量为3,第一连接数量3小于第一连接阈值16时,执行步骤203;若第一连接数量为18,第一连接数量18大于第一连接阈值16时,执行步骤204。第一连接阈值确定过程可以参照下述图4A及图4B所示实施例中的相关描述,在此先不详述。本领域技术人员可以理解的是,负载均衡器12每次向服务器18发送连接请求报文时,会记录发送到服务器18上的连接请求报文的数量,此处负载均衡器12将发送到服务器18上的连接请求报文进行记录从而确定第一连接数量的过程为现有技术,故不作详述。
在步骤203中,在一实施例中,当第一连接数量小于或者等于第一连接阈值时,表示服务器18上的当前接收到的来自负载均衡器12的连接请求报文的数量在第一连接阈值范围内,结合步骤202,例如,第一连接数量3小于第一连接阈值16,表示负载均衡器12可以将该连接请求报文发送到服务器18。
在步骤204中,在一实施例中,结合步骤202,第一连接数量为18、第一连接阈值为16,第一连接数量18大于第一连接阈值16,负载均衡器12将连接请求报文分配给除服务器18以外的服务器15、服务器16、服务器17。本发明实施例中,负载均衡器12将第一连接数量18超过第一连接阈值16的连接请求报文分配给服务器15、服务器16、服务器17,避免了服务器18接收过多的连接请求报文。
本发明实施例中,负载均衡器通过预设报文分配算法对接收来自客户端的连接请求报文进行分配,当负载均衡器确定将连接请求报文分配到目标服务器且并未发送给目标服务器时,负载均衡器基于第一预设时间段及第一连接阈值判断是否将该连接请求报文发送给目标服务器,避免了目标服务器无法承受,解决了目标服务器终止响应报文的问题。
图3是本发明提供的另一个连接请求报文的分配方法的实施例流程图,在上述图2所示发明实施例的基础上,本发明实施例还包括图3所示步骤,结合图1、图2进行示例性说明,包括步骤如下:
步骤301:负载均衡器确定第一时间点及第二时间点之间的第一时间差,第二时间点为负载均衡器获取到目标服务器的二元组信息时的时间点。
步骤302:负载均衡器判断第一时间差是否小于或者等于预设时长,当负载均衡器判断第一时间差小于或者等于预设时长时,执行上述图2所示步骤201以及之后的方法步骤(图3中未示出);当负载均衡器判断第一时间差大于预设时长时,执行步骤303。
步骤303:负载均衡器将该连接请求报文发送给目标服务器。
在步骤301中,负载均衡器12确定第一时间点及第二时间点之间的第一时间差,第二时间点为负载均衡器12获取到服务器18的二元组信息时的时间点。负载均衡器12获取服务器18的二元组信息的方法可以为:管理人员通过管理端13上安装的交互软件输入服务器18的二元组信息,使得负载均衡器12通过互联网14接收到携带服务器18的二元组信息的报文,并根据该报文解析出服务器18的二元组信息,二元组信息例如为192.168.1.1、80。结合步骤201,例如第一时间点为12:00:05:34,第二时间点为12:00:00:00,第一时间差为5秒34微秒。
在步骤302中,负载均衡器12判断第一时间差是否小于或者等于预设时长。预设时长可以由管理人员通过管理端13上安装的交互软件进行配置,预设时长为服务器18可以正常接收负载均衡器12分配的连接请求报文所需的适应时长,该预设时长可以由管理人员根据服务器18的配置及测试结果确定,预设时长例如为10秒。当负载均衡器12判断第一时间差小于或者等于预设时长时,例如,负载均衡器12判断第一时间差5秒34微秒小于预设时长10秒,负载均衡器12执行上述图2所示步骤201以及之后的方法步骤(图3中未示出);当负载均衡器12判断第一时间差大于预设时长时,执行步骤303,例如第一时间点为12:00:15:00,第二时间点为12:00:03:00,第一时间差即为12秒,负载均衡器12判断第一时间差12秒大于预设时长10秒,执行步骤303。
在步骤303中,负载均衡器12将连接请求报文发送给服务器18。本发明实施例中,若负载均衡器12判断第一时间差大于预设时长,表示负载均衡器12将连接请求报文发送到服务器18时,服务器18可以适应并正常对该连接请求报文进行处理。
本发明实施例中,负载均衡器12基于预设时长判断服务器18是否处于适应时长内,当负载均衡器12基于预设时长判断服务器18处于适应时长内时,负载均衡器12按照图2所示步骤对服务器18进行处理。管理人员通过管理端13配置服务器18在正常接收连接请求报文之前所需的预设时长,使得服务器18在预设时长内得到适应及缓冲。
图4A是本发明提供的再一个连接请求报文的分配方法的实施例流程图,图4B是图4A所示实施例示出的第二连接阈值在预设时长内的分布图,在上述图2、图3所示发明实施例的基础上,结合图2所示步骤201,负载均衡器判断第一时间点是否处于第一预设时间段内,当第一时间点未处于第一预设时间段内时,本发明实施例还包括图4A所示步骤,结合图1、图2、图3、图4B进行示例性说明,包括步骤如下:
步骤401:负载均衡器获取第一预设时间段结束时的第二连接数量并将第一预设时间段结束时的时间点记录为第三时间点,第二连接数量为第一预设时间段内负载均衡器接收来自客户端的连接请求报文的总数。
步骤402:基于第二连接数量、每一台服务器对应的权重系数,负载均衡器确定目标服务器上第三连接数量,每一台服务器为与负载均衡器相连接的服务器。
步骤403:基于第二时间差与预设时长的比例关系以及目标服务器对应的第三连接数量,负载均衡器确定第三预设时间段内所使用的第二连接阈值,第二时间差为第三时间点与第二时间点之间的差值,第三预设时间段为第一预设时间段结束时下一连续的时间段。
在步骤401中,负载均衡器12获取第一预设时间段结束时的第二连接数量并将第一预设时间段结束时的时间点记录为第三时间点,第二连接数量为第一预设时间段内负载均衡器12接收来自客户端的连接请求报文的总数。在一实施例中,负载均衡器12获取N+1秒至N+2秒时间段的N+2秒时的第二连接数量并将N+2秒时的时间点记录为第三时间点,以N为12:00:04:00、第二连接数量为400为例进行示例性说明,负载均衡器12获取12:00:05:00-12:00:06:00时间段内的第二连接数量400,并将12:00:06:00记录为第三时间点。
在步骤402中,结合图1,基于第二连接数量、以及服务器15、服务器16、服务器17、服务器18对应的权重系数,负载均衡器12确定服务器18上第三连接数量。其中,权重系数为管理人员根据服务器15、服务器16、服务器17、服务器18的性能配置情况,对服务器15、服务器16、服务器17、服务器18分配不同的权重系数,当负载均衡器12通过预设报文分配算法将连接请求报文在服务器15、服务器16、服务器17、服务器18中进行分配时,服务器15、服务器16、服务器17、服务器18对应的权重系数与服务器15、服务器16、服务器17、服务器18参与分配的概率成正比,本领域技术人员可以理解的是,此处权重系数的概念为现有技术,故不作详述。负载均衡器12可以通过预设公式确定服务器18上第三连接数量。在一实施例中,第二连接数量为X,服务器15、服务器16、服务器17、服务器18对应的权重系数分别为a、b、c、d,第三连接数量为Y,则负载均衡器12确定第三连接数量可以通过预设公式Y=X*d/(a+b+c+d)得到,此公式仅为示例性说明,其并不能形成对本发明的限制。以第二连接数量为400、服务器数量为4、服务器15、服务器16、服务器17、服务器18对应的权重系数分别为1、1、1、2为例进行示例性说明,通过公式Y=X*d/(a+b+c+d)得到400*2/(1+1+1+2)=160,第三连接数量即为160,表示新增的服务器18中处理连接请求报文的数量的最大理论值为160个。本领域技术人员可以理解的是,此处第三连接数量Y是基于第二连接数量X得到的,第二连接数量为N+1秒至N+2秒时间段内负载均衡器12接收来自客户端的连接请求报文的总数,由于第二连接数量X是波动的,所以第三连接数量Y在实际应用中并不是固定的,但由于短时间内,例如30秒内,第二连接数量X的波动幅度并不是很大,此处可将短时间内的第二连接数量X视为不变,第二连接数量X例如为400。
在步骤403中,基于第二时间差与预设时长的比例关系以及服务器18对应的第三连接数量,负载均衡器12确定第三预设时间段内所使用的第二连接阈值,第二时间差为第三时间点与第二时间点之间的时间的差值,第三预设时间段为第一预设时间段结束时下一连续的时间段。在一实施例中,第一预设时间段、第二预设时间段及第三预设时间段分别为N+1秒至N+2秒、N+0秒至N+1秒、N+2秒至N+3秒的时间段,第二时间差为t,预设时长为T,第三连接数量为Y,第二连接阈值为Z,第二时间差t与预设时长T的比例关系可以为t/T,负载均衡器12可以通过公式Z=t*Y/T得到第二连接阈值。本领域技术人员可以理解的是,公式Z=t*Y/T以及第二时间差t与预设时长T的比例关系为t/T仅为示例性说明,公式还可以根据管理人员的需求进行变形,例如:Z=t*t*Y/(T*T),即第二时间差t与预设时长T的比例关系为t*t/(T*T),公式及第二时间差t与预设时长T的比例关系的选取原则为:第二连接阈值Z的数量可以与第二时间差t成正比例增加关系,此处公式Z=t*Y/T及第二时间差t与预设时长T的比例关系为t/T并不能形成对本发明的限制。第二连接阈值Z为第三预设时间段N+2秒至N+3秒所使用的,第三预设时间段为第一预设时间段N+1秒至N+2秒结束时下一连续的时间段。例如,N为12:00:04:00,第三预设时间段为12:00:06:00-12:00:07:00,第一预设时间段为12:00:05:00-12:00:06:00,负载均衡器12在12:00:06:00时,通过公式Z=t*Y/T得到第二连接阈值Z,该第二连接阈值Z用于限定12:00:06:00-12:00:07:00时间段内,服务器18所能接收的最大连接请求报文的数量。
结合步骤401-步骤402,如图4B所示,以x坐标轴为第二时间差t,预设时长T为10秒,y坐标轴为第二连接阈值,第二连接阈值的最大值为第三连接数量160(第二连接数量X在10秒内保持为400),第三时间点与第二时间点之间的第二时间差t分别为1秒、2秒、3秒、4秒、5秒、6秒、7秒、8秒、9秒、10秒对第二连接阈值Z在10秒内的的变化情况进行示例性说明。表1为图4B所示的第二时间差t分别为1秒、2秒、3秒、4秒、5秒、6秒、7秒、8秒、9秒、10秒时,x坐标轴表示的第二时间差t与y坐标轴表示的第二连接阈值Z之前对应的数值:
表1
第二时间差t 第二连接阈值Z
0 0
1 16
2 32
3 48
4 64
5 80
6 96
7 112
8 128
9 144
10 160
表1中,第二时间差t为0秒时,第二连接阈值Z为0;第二时间差t为1秒时,第二连接阈值Z为16;第二时间差t为2秒时,第二连接阈值Z为32;第二时间差t为3秒时,第二连接阈值Z为48;第二时间差t为4秒时,第二连接阈值Z为64;第二时间差t为5秒时,第二连接阈值Z为80;第二时间差t为6秒时,第二连接阈值Z为96;第二时间差t为7秒时,第二连接阈值Z为112;第二时间差t为8秒时,第二连接阈值Z为128;第二时间差t为9秒时,第二连接阈值Z为144;第二时间差t为10秒时,第二连接阈值Z为160。随着第二时间差t的增长,第二连接阈值Z与第二时间差t呈现正比例增长关系。结合图4B以及图1、图2、图3、图4A所示步骤,以第二时间点为12:00:00:00,第三时间点为12:00:06:00,N为12:00:04:00,第三连接数量Y为160,T为10秒对负载均衡器12确定第二连接阈值Z的过程进行示例性说明:
图4B所示坐标点(0,0)位置表示12:00:00:00时刻,第二连接阈值Z为0的情况,基于N为12:00:04:00,坐标点(5,0)位置至坐标点(6,0)位置表示第一预设时间段12:00:05:00-12:00:06:00;坐标点(6,0)位置至坐标点(7,0)位置表示第三预设时间段12:00:06:00-12:00:07:00;坐标点(4,0)位置至坐标点(5,0)位置表示第二预设时间段12:00:04:00-12:00:05:00。基于第三时间点12:00:06:00,第二时间点12:00:00:00得到第二时间差t为6秒,负载均衡器12基于公式Z=t*Y/T,得到6*160/10=96,第二连接阈值为96,表示坐标点(6,0)位置至坐标点(7,0)位置所示的第三预设时间段12:00:06:00-12:00:07:00内以第二连接阈值96作为阈值,该阈值为服务器18在时间段12:00:06:00-12:00:07:00内接收连接请求报文数量的最大值。
本发明实施例中,负载均衡器12确定第三预设时间段内所使用的第二连接阈值,第二连接阈值为服务器18在下一预设时间段内接收连接请求报文数量的最大值。负载均衡器12在每个预设时间段结束时计算得到下一预设时间段所用的第二连接阈值。随着第二时间差的增长逐步提高了第二连接阈值的大小,即负载均衡器12可以逐渐增加发送到服务器18中的连接请求报文的数量,使得服务器18逐渐适应工作环境,确保服务器18正常响应报文。
对应于上述连接请求报文的分配方法,本发明还提出了图5所示的负载均衡器的硬件结构图。请参考图5,在硬件层面,该负载均衡器包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成连接请求报文的分配装置。当然,除了软件实现方式之外,本发明并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
图6是本发明提供的一个连接请求报文的分配装置的实施例框图,如图6所示,该连接请求报文的分配装置可以包括:时间段判断模块、阈值判断模块、第一报文发送模块,其中:
时间段判断模块,用于当确定将连接请求报文分配到目标服务器且并未发送给目标服务器时,判断待发送连接请求报文的第一时间点是否处于第一预设时间段内;
阈值判断模块,用于当时间段判断模块中的第一时间点处于第一预设时间段时,判断第一连接数量是否小于或者等于第一连接阈值,第一连接数量为负载均衡器记录的已发送到目标服务器上的连接请求报文的数量,第一连接阈值为负载均衡器在第二预设时间段结束时确定的;
第一报文发送模块,用于当阈值判断模块中的第一连接数量小于或者等于第一连接阈值时,将连接请求报文发送到目标服务器。
图7是本发明提供的另一个连接请求报文的分配装置的实施例框图,如图7所示,在上述图6所示实施例的基础上,在一实施例中,连接请求报文的分配装置还包括:
第一时间差确定模块,用于确定时间段判断模块中的第一时间点及第二时间点之间的第一时间差,第二时间点为负载均衡器获取到目标服务器的二元组信息时的时间点;
预设时长判断模块,用于判断第一时间差确定模块中的第一时间差是否小于或者等于预设时长;
当预设时长判断模块中的第一时间差小于或者等于预设时长时,阈值判断模块执行阈值判断模块中的判断第一时间点是否处于第一预设时间段的步骤。
在一实施例中,连接请求报文的分配装置还包括:
第二报文发送模块,用于当预设时长判断模块中的第一时间差大于预设时长时,将连接请求报文发送给目标服务器。
在一实施例中,连接请求报文的分配装置还包括:
时间点记录模块,用于当阈值判断模块中的第一时间点未处于第一预设时间段内时,获取第一预设时间段结束时的第二连接数量并将第一预设时间段结束时的时间点记录为第三时间点,第二连接数量为第一预设时间段内负载均衡器接收来自客户端的连接请求报文的总数;
连接数量确定模块,用于基于时间点记录模块中获取的第二连接数量、每一台服务器对应的权重系数,确定目标服务器上第三连接数量,每一台服务器为与负载均衡器相连接的服务器;
连接阈值确定模块,用于基于第二时间差与预设时长的比例关系以及目标服务器对应的连接数量确定模块中确定的第三连接数量,确定第三预设时间段内所使用的第二连接阈值,第二时间差为第三时间点与第二时间点之间的差值,第三预设时间段为第一预设时间段结束时下一连续的时间段。
在一实施例中,连接请求报文的分配装置还包括:
报文分配模块,用于当阈值判断模块中的第一连接数量大于第一连接阈值时,将连接请求报文分配给除目标服务器以外的与负载均衡器相连接的其他服务器。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
由上述实施例可见,当负载均衡器确定将连接请求报文分配到目标服务器且并未发送给目标服务器时,负载均衡器基于第一预设时间段及第一连接阈值判断是否将该连接请求报文发送给目标服务器,避免了目标服务器无法承受,解决了目标服务器终止响应报文的问题。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (8)

1.一种连接请求报文的分配方法,应用在负载均衡器中,所述负载均衡器对来自客户端的连接请求报文进行分配,其特征在于,所述方法包括:
当确定将所述连接请求报文分配到目标服务器且并未发送给所述目标服务器时,确定第一时间点及第二时间点之间的第一时间差,所述第二时间点为所述负载均衡器获取到所述目标服务器的二元组信息时的时间点,所述第一时间点为所述连接请求报文被分配到目标服务器时的待发送时间点;
判断所述第一时间差是否小于或者等于预设时长;
当所述第一时间差小于或者等于所述预设时长时,判断待发送所述连接请求报文的第一时间点是否处于第一预设时间段内;
当所述第一时间点处于第一预设时间段时,判断第一连接数量是否小于或者等于第一连接阈值,所述第一连接数量为负载均衡器记录的已发送到所述目标服务器上的连接请求报文的数量,所述第一连接阈值为所述负载均衡器在第二预设时间段结束时确定的;
当所述第一连接数量小于或者等于所述第一连接阈值时,将所述连接请求报文发送到所述目标服务器。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述第一时间差大于所述预设时长时,将所述连接请求报文发送给所述目标服务器。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述第一时间点未处于所述第一预设时间段内时,获取所述第一预设时间段结束时的第二连接数量并将所述第一预设时间段结束时的时间点记录为第三时间点,所述第二连接数量为所述第一预设时间段内所述负载均衡器接收来自客户端的连接请求报文的总数;
基于所述第二连接数量、每一台服务器对应的权重系数,确定所述目标服务器上第三连接数量,所述每一台服务器为与所述负载均衡器相连接的服务器;
基于第二时间差与所述预设时长的比例关系以及所述目标服务器对应的第三连接数量确定第三预设时间段内所使用的第二连接阈值,所述第二时间差为所述第三时间点与所述第二时间点之间的差值,所述第三预设时间段为第一预设时间段结束时下一连续的时间段。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述第一连接数量大于第一连接阈值时,将所述连接请求报文分配给除所述目标服务器以外的与所述负载均衡器相连接的其他服务器。
5.一种连接请求报文的分配装置,其特征在于,所述装置包括:
时间段判断模块,用于当确定将所述连接请求报文分配到目标服务器且并未发送给所述目标服务器时,判断待发送所述连接请求报文的第一时间点是否处于第一预设时间段内;
第一时间差确定模块,用于确定所述时间段判断模块中的所述第一时间点及第二时间点之间的第一时间差,所述第二时间点为负载均衡器获取到所述目标服务器的二元组信息时的时间点,所述第一时间点为所述连接请求报文被分配到目标服务器时的待发送时间点;
预设时长判断模块,用于判断所述第一时间差确定模块中的所述第一时间差是否小于或者等于预设时长,当所述预设时长判断模块中的所述第一时间差小于或者等于所述预设时长时,执行阈值判断模块中的判断所述第一时间点是否处于第一预设时间段的步骤;
阈值判断模块,用于当所述时间段判断模块中的所述第一时间点处于第一预设时间段时,判断第一连接数量是否小于或者等于第一连接阈值,所述第一连接数量为负载均衡器记录的已发送到所述目标服务器上的连接请求报文的数量,所述第一连接阈值为所述负载均衡器在第二预设时间段结束时确定的;
第一报文发送模块,用于当所述阈值判断模块中的所述第一连接数量小于或者等于所述第一连接阈值时,将所述连接请求报文发送到所述目标服务器。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
第二报文发送模块,用于当所述预设时长判断模块中的所述第一时间差大于所述预设时长时,将所述连接请求报文发送给所述目标服务器。
7.根据权利要求5所述的装置,其特征在于,所述装置还包括:
时间点记录模块,用于当所述阈值判断模块中的所述第一时间点未处于所述第一预设时间段内时,获取所述第一预设时间段结束时的第二连接数量并将所述第一预设时间段结束时的时间点记录为第三时间点,所述第二连接数量为所述第一预设时间段内所述负载均衡器接收来自客户端的连接请求报文的总数;
连接数量确定模块,用于基于所述时间点记录模块中获取的所述第二连接数量、每一台服务器对应的权重系数,确定所述目标服务器上第三连接数量,所述每一台服务器为与所述负载均衡器相连接的服务器;
连接阈值确定模块,用于基于第二时间差与所述预设时长的比例关系以及所述目标服务器对应的所述连接数量确定模块中确定的第三连接数量,确定第三预设时间段内所使用的第二连接阈值,所述第二时间差为所述第三时间点与所述第二时间点之间的差值,所述第三预设时间段为第一预设时间段结束时下一连续的时间段。
8.根据权利要求5所述的装置,其特征在于,所述装置还包括:
报文分配模块,用于当所述阈值判断模块中的所述第一连接数量大于第一连接阈值时,将所述连接请求报文分配给除所述目标服务器以外的与所述负载均衡器相连接的其他服务器。
CN201610916167.1A 2016-10-20 2016-10-20 一种连接请求报文的分配方法及装置 Active CN106385459B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610916167.1A CN106385459B (zh) 2016-10-20 2016-10-20 一种连接请求报文的分配方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610916167.1A CN106385459B (zh) 2016-10-20 2016-10-20 一种连接请求报文的分配方法及装置

Publications (2)

Publication Number Publication Date
CN106385459A CN106385459A (zh) 2017-02-08
CN106385459B true CN106385459B (zh) 2020-02-11

Family

ID=57958007

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610916167.1A Active CN106385459B (zh) 2016-10-20 2016-10-20 一种连接请求报文的分配方法及装置

Country Status (1)

Country Link
CN (1) CN106385459B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106789713B (zh) * 2017-03-13 2021-09-21 杭州迪普科技股份有限公司 一种报文转发的方法及装置
CN107302580B (zh) * 2017-06-30 2020-05-29 北京金山安全软件有限公司 负载均衡方法、装置、负载均衡器及存储介质
CN107566217B (zh) * 2017-09-19 2020-11-13 顺丰科技有限公司 一种流量控制方法、装置、设备、存储介质
CN108055358A (zh) * 2018-01-11 2018-05-18 郑州云海信息技术有限公司 一种负载均衡算法-智能加权算法实现方法
CN110121202B (zh) * 2018-02-07 2021-06-15 成都鼎桥通信技术有限公司 接入方法及终端设备
CN110233860B (zh) * 2018-03-05 2021-12-24 杭州萤石软件有限公司 一种负载均衡方法、装置和系统
CN108718335A (zh) * 2018-05-14 2018-10-30 北京百悟科技有限公司 一种负载均衡方法、装置、Web服务器及存储介质
CN109150741B (zh) * 2018-08-10 2022-05-20 Oppo广东移动通信有限公司 报文发送方法、装置、电子设备及存储介质
US10893166B2 (en) * 2018-08-29 2021-01-12 Canon Kabushiki Kaisha Management system, method, and program storage medium
CN111083181B (zh) * 2018-10-19 2023-02-17 北京奇虎科技有限公司 大规模接入物联网的设备调度方法、网关和系统
CN110247983A (zh) * 2019-06-27 2019-09-17 北京奇艺世纪科技有限公司 一种均衡负载方法及系统
CN115002131B (zh) * 2022-05-24 2024-03-01 中欣链证数字科技有限公司 一种用户请求分配方法、装置、设备及系统
CN117716736A (zh) * 2022-06-15 2024-03-15 北京小米移动软件有限公司 请求处理方法、装置、服务端及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102594727A (zh) * 2012-02-07 2012-07-18 苏州阔地网络科技有限公司 一种分布式即时通讯系统及其通讯方法
CN103108039A (zh) * 2013-01-25 2013-05-15 暨南大学 一种低能耗集群环境下的服务质量保证方法
CN104811398A (zh) * 2015-04-17 2015-07-29 北京奇艺世纪科技有限公司 一种负载均衡的方法及装置
US9300728B1 (en) * 2013-10-14 2016-03-29 Ca, Inc. Controlling resource deployment thresholds in a distributed computer system
CN105450716A (zh) * 2014-09-25 2016-03-30 阿里巴巴集团控股有限公司 动态业务分发方法及系统
CN105471933A (zh) * 2014-08-07 2016-04-06 腾讯科技(深圳)有限公司 服务器过载保护方法、服务器过载保护系统及服务器

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102594727A (zh) * 2012-02-07 2012-07-18 苏州阔地网络科技有限公司 一种分布式即时通讯系统及其通讯方法
CN103108039A (zh) * 2013-01-25 2013-05-15 暨南大学 一种低能耗集群环境下的服务质量保证方法
US9300728B1 (en) * 2013-10-14 2016-03-29 Ca, Inc. Controlling resource deployment thresholds in a distributed computer system
CN105471933A (zh) * 2014-08-07 2016-04-06 腾讯科技(深圳)有限公司 服务器过载保护方法、服务器过载保护系统及服务器
CN105450716A (zh) * 2014-09-25 2016-03-30 阿里巴巴集团控股有限公司 动态业务分发方法及系统
CN104811398A (zh) * 2015-04-17 2015-07-29 北京奇艺世纪科技有限公司 一种负载均衡的方法及装置

Also Published As

Publication number Publication date
CN106385459A (zh) 2017-02-08

Similar Documents

Publication Publication Date Title
CN106385459B (zh) 一种连接请求报文的分配方法及装置
CN107800768B (zh) 开放平台控制方法和系统
US11546644B2 (en) Bandwidth control method and apparatus, and device
CN109076026B (zh) 用于基于等待时间排队的系统和方法
US10789100B2 (en) System, apparatus and method for resource provisioning
US9405588B2 (en) Cloud resource allocation system and method
CN108183950B (zh) 一种网络设备建立连接的方法及装置
CN110519183B (zh) 一种节点限速的方法、装置、电子设备及存储介质
CN110868465A (zh) 一种容器云的负载均衡系统及方法
CN107205030B (zh) 服务器资源调度方法及系统
CN109510878B (zh) 一种长连接会话保持方法和装置
TW201822013A (zh) 伺服器負載均衡的方法、裝置及伺服器設備
CN107589997B (zh) 数据中心环境下保证延迟敏感程序QoS的动态调节方法
CN104239150B (zh) 一种硬件资源调整的方法及装置
CN108933829A (zh) 一种负载均衡方法及装置
CN112311628B (zh) 网络测速方法、系统、网络设备和存储介质
CN107979539A (zh) 报文处理方法及装置
US20180295044A1 (en) Automated management of service instances
CN111459676B (zh) 一种节点资源管理方法、装置及存储介质
CN109413117B (zh) 分布式数据计算方法、装置、服务器及计算机存储介质
CN108200185B (zh) 一种实现负载均衡的方法及装置
CN108234658B (zh) 一种感知服务器集群健康状况的方法、装置和服务器
CN110572299B (zh) 设备测试方法、系统、装置、网络节点、终端及存储介质
CN112506896B (zh) 一种数据删除方法、装置及电子设备
CN113835905A (zh) 一种消息队列负载均衡方法、装置、电子设备及介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
CB02 Change of applicant information

Address after: Binjiang District and Hangzhou city in Zhejiang Province Road 310051 No. 68 in the 6 storey building

Applicant after: Hangzhou Dipu Polytron Technologies Inc

Address before: Binjiang District and Hangzhou city in Zhejiang Province Road 310051 No. 68 in the 6 storey building

Applicant before: Hangzhou Dipu Technology Co., Ltd.

COR Change of bibliographic data
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20210610

Address after: 310051 05, room A, 11 floor, Chung Cai mansion, 68 Tong Xing Road, Binjiang District, Hangzhou, Zhejiang.

Patentee after: Hangzhou Dip Information Technology Co.,Ltd.

Address before: 310051, 6 floor, Chung Cai mansion, 68 Tong he road, Binjiang District, Hangzhou, Zhejiang.

Patentee before: Hangzhou DPtech Technologies Co.,Ltd.

TR01 Transfer of patent right