CN108200218A - 一种实现负载均衡的方法、装置及电子设备 - Google Patents

一种实现负载均衡的方法、装置及电子设备 Download PDF

Info

Publication number
CN108200218A
CN108200218A CN201810193187.XA CN201810193187A CN108200218A CN 108200218 A CN108200218 A CN 108200218A CN 201810193187 A CN201810193187 A CN 201810193187A CN 108200218 A CN108200218 A CN 108200218A
Authority
CN
China
Prior art keywords
server
data connection
reached
standard grade
data
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.)
Granted
Application number
CN201810193187.XA
Other languages
English (en)
Other versions
CN108200218B (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.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and Technology 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 Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN201810193187.XA priority Critical patent/CN108200218B/zh
Publication of CN108200218A publication Critical patent/CN108200218A/zh
Application granted granted Critical
Publication of CN108200218B publication Critical patent/CN108200218B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/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/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/14Session management
    • H04L67/148Migration or transfer of sessions

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)

Abstract

本发明实施例提供了一种实现负载均衡的方法、装置及电子设备,属于计算机领域。本发明通过接收待上线的服务器的注册请求消息,然后获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间,然后在数据连接中,确定空闲时间大于预设阈值的候选数据连接,再根据预设的迁移策略,在候选数据连接中确定目标数据连接,最后将目标数据连接迁移至待上线的服务器。采用本发明提供的方法,在待上线的服务器投入使用时,可以及时地将服务器集群中其它服务器中的负载迁移到待上线的服务器,从而均衡各服务器的负载。

Description

一种实现负载均衡的方法、装置及电子设备
技术领域
本发明涉及计算机领域,特别涉及一种实现负载均衡的方法、装置及电子设备。
背景技术
在网络通信中,服务器集群中通常包含多台服务器,为了均衡各服务器的负载,通常需要使用负载均衡器。负载均衡器可以把客户端的网络请求分散到服务器集群中的可用服务器上,以此均衡各服务器的负载。
目前,通常是在客户端与服务器建立数据连接时,负载均衡器通过预设的调度算法(例如,轮询调度算法和最少连接调度算法),选取符合该算法的服务器,然后将客户端与该服务器建立数据连接。然而,当服务器集群中有待上线的服务器投入使用时,例如,为了扩展服务器集群的总容量而添加服务器时,或者下线维修的服务器重新上线时,负载均衡器通过现有的调度算法无法将服务器集群中其它服务器中的负载迁移到待上线的服务器中。
由于待上线的服务器刚投入使用时,待上线的服务器中没有负载,特别是在长连接场景中,例如,在RPC(Remote Procedure Call,远程过程调用)连接场景中,这样导致服务器集群中各服务器的负载没有达到均衡的状态。
发明内容
本发明实施例的目的在于提供一种实现负载均衡的方法、装置及电子设备,可以及时地将服务器集群中其它服务器中的负载迁移到待上线的服务器,从而均衡各服务器的负载。具体技术方案如下:
第一方面,提供了一种实现负载均衡的方法,所述方法包括:
接收待上线的服务器发送的注册请求消息;
获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间;
在所述数据连接中,确定空闲时间大于预设阈值的候选数据连接;
根据预设的迁移策略,在所述候选数据连接中确定目标数据连接;
将所述目标数据连接迁移至所述待上线的服务器。
可选的,所述根据预设的迁移策略,在所述候选数据连接中确定目标数据连接,包括:
根据所述候选数据连接对应的各服务器的数据连接的总数目和所述候选数据连接对应的各服务器与待上线的服务器的总数目,计算平均数据连接数目;
分别确定所述候选数据连接对应的各服务器中的目标数据连接,所述目标数据连接的总数目等于所述平均数据连接数目。
可选的,所述根据预设的迁移策略,在所述候选数据连接中确定目标数据连接,包括:
根据所述候选数据连接对应的各服务器的总数据流量和所述候选数据连接对应的各服务器与待上线的服务器的总数目,计算平均数据流量;
分别确定所述候选数据连接对应的各服务器中的目标数据连接,所述目标数据连接对应的总数据流量等于所述平均数据流量。
可选的,所述将所述目标数据连接迁移至所述待上线的服务器之后,还包括:
向所述目标数据连接对应的客户端和先前连接的服务器发送重连指令,以使所述目标数据连接对应的客户端与所述待上线的服务器建立数据连接。
可选的,所述接收待上线的服务器的注册请求消息之后,还包括:
向所述待上线的服务器发送注册探测消息,如果接收到所述待上线的服务器返回的注册应答消息,则执行所述获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间的步骤;
如果未接收到所述待上线的服务器返回的注册应答消息,则结束本次注册处理。
第二方面,提供了一种实现负载均衡的装置,所述装置包括:
接收模块,用于接收待上线的服务器发送的注册请求消息;
获取模块,用于获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间;
第一确定模块,用于在所述数据连接中,确定空闲时间大于预设阈值的候选数据连接;
第二确定模块,用于根据预设的迁移策略,在所述候选数据连接中确定目标数据连接;
迁移模块,用于将所述目标数据连接迁移至所述待上线的服务器。
可选的,所述第二确定模块,包括:
第一计算模块,用于根据所述候选数据连接对应的各服务器的数据连接的总数目和所述候选数据连接对应的各服务器与待上线的服务器的总数目,计算平均数据连接数目;
第三确定模块,用于分别确定所述候选数据连接对应的各服务器中的目标数据连接,所述目标数据连接的总数目等于所述平均数据连接数目。
可选的,所述第二确定模块,包括:
第一计算模块,用于根据所述候选数据连接对应的各服务器的总数据流量和所述候选数据连接对应的各服务器与待上线的服务器的总数目,计算平均数据流量;
第四确定模块,用于分别确定所述候选数据连接对应的各服务器中的目标数据连接,所述目标数据连接对应的总数据流量等于所述平均数据流量。
可选的,所述迁移模块,还用于:
向所述目标数据连接对应的客户端和先前连接的服务器发送重连指令,以使所述目标数据连接对应的客户端与所述待上线的服务器建立数据连接。
可选的,所述接收模块,还用于:
向所述待上线的服务器发送注册探测消息,如果接收到所述待上线的服务器返回的注册应答消息,则执行所述获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间的步骤;
如果未接收到所述待上线的服务器返回的注册应答消息,则结束本次注册处理。
第三方面,提供了一种电子设备,所述电子设备包括处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现上述第一方面所述的任一实现负载均衡的方法步骤。
第四方面,为了达到上述目的,本发明实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时,实现如上述第一方面所述的实现负载均衡的方法步骤。
本发明实施例提供了一种实现负载均衡的方法、装置及电子设备,可以接收待上线的服务器的注册请求消息,然后获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间,然后在数据连接中,确定空闲时间大于预设阈值的候选数据连接,再根据预设的迁移策略,在候选数据连接中确定目标数据连接,最后将目标数据连接迁移至待上线的服务器。采用本发明提供的方法,在待上线的服务器投入使用时,可以及时地将服务器集群中其它服务器中的负载迁移到待上线的服务器,从而均衡各服务器的负载。本发明实施例提供的方法可以适用于长连接场景中。当然,实施本发明的任一产品或方法不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例提供的一种实现负载均衡的方法流程图;
图2为本发明实施例提供的一种实现负载均衡的装置结构示意图;
图3为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
本发明实施例公开了一种实现负载均衡的方法、装置及电子设备,本发明实施例的执行主体可以是负载均衡器,以下分别进行详细说明。
如图1所示,图1为本发明实施例的一种实现负载均衡的方法流程图,包括如下步骤:
步骤101,接收待上线的服务器发送的注册请求消息。
在实施中,技术人员为了扩展服务器集群的总容量,会在服务器集群中添加服务器,或者某服务器下线维修后,会重新上线,这时,这些待上线的服务器可以向负载均衡器发送注册请求消息,注册请求消息中可以携带有待上线的服务器的IP(InternetProtocol,互联网协议)地址和服务端口号等信息。负载均衡器可以接收待上线的服务器发送的注册请求消息,然后对注册请求消息进行解析,获取待上线的服务器的IP地址和服务端口号等信息。
步骤102,获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间。
其中,空闲时间是指数据连接保持连通状态,且未传输业务数据的时间段。
在实施中,服务器集群中的服务器与客户端在进行业务数据传输之前,通常需要通过负载均衡器与客户端建立数据连接。在建立数据连接和业务数据传输的过程中,负载均衡器具有中转的作用。在数据连接建立完成后,服务器可以向负载均衡器发送业务数据,然后负载均衡器将这些业务数据转发给客户端。当客户端与服务器之间没有业务需要传输时,原先建立的数据连接可以保持在预设的时间段内保持连通状态,这个时间段可以称为空闲时间。负载均衡器可以获取服务器集群中各服务器与各客户端之间的数据连接的数目,以及各数据连接的空闲时间。
步骤103,在数据连接中,确定空闲时间大于预设阈值的候选数据连接。
在实施中,负载均衡器可以将各数据连接的空闲时间与预设阈值进行比较,得到空闲时间大于预设阈值的数据连接(可以称为候选数据连接)。
步骤104,根据预设的迁移策略,在候选数据连接中确定目标数据连接。
在实施中,负载均衡器中可以预先存储迁移策略,例如,根据数据连接数目预设的迁移策略,或者,根据数据流量预设的迁移策略。负载均衡器可以根据预设的迁移策略,计算出一个迁移参数(例如,平均数据连接数目或者平均数据流量),然后按照负载均衡的原则,先确定负载大于迁移参数并且包含候选数据连接的服务器,然后将这些服务器中的候选数据连接迁移至待上线的服务器,直至带上线的服务器的负载等于或接近迁移参数,被迁移的数据连接即为目标数据连接。
步骤105,将目标数据连接迁移至待上线的服务器。
在实施中,负载均衡器可以迁移服务器的数据连接,在确定目标数据连接后,可以将目标数据连接迁移至待上线的服务器,从而均衡服务器集群中各服务器的负载。
可选的,负载均衡器可以根据候选数据连接对应的各服务器的数据连接的总数目和候选数据连接对应的各服务器与待上线的服务器的总数目,计算平均数据连接数目,然后分别确定候选数据连接对应的各服务器中的目标数据连接。
其中,目标数据连接的总数目等于平均数据连接数目。
在实施中,负载均衡器可以先计算平均数据连接数目,然后确定目标数据连接数目。例如,候选数据连接对应的服务器的数目是5台,每台服务器的数据连接数目是10000个,待上线的服务器的数目是1台,那么平均数据连接数目为10000*5/6≈8334个;然后,负载均衡器则从候选数据连接对应的5台服务器中确定目标数据连接,目标数据连接的总数目等于或接近8334,从而使候选数据连接对应的5台服务器和待上线的1台服务器的数据连接的数目都接近8334,即实现负载均衡的目的。
本发明实施例提供的方案中,通过均衡各服务器的数据连接的数目来实现负载均衡,这样可以提高完成负载均衡的速率。
可选的,负载均衡器可以根据候选数据连接对应的各服务器的总数据流量和候选数据连接对应的各服务器与待上线的服务器的总数目,计算平均数据流量,然后分别确定候选数据连接对应的各服务器中的目标数据连接,其中,目标数据连接对应的总数据流量等于平均数据流量。
在实施中,负载均衡器可以获取候选数据连接对应的各服务器的数据流量,然后根据总数据流量和候选数据连接对应的各服务器与待上线的服务器的总数目,计算平均数据流量。例如,候选数据连接对应的服务器的数目是5台,每台服务器的数据流量是10000bps(bits per second,比特每秒),待上线的服务器的数目是1台,那么平均数据流量为10000*5/6≈8334bps;然后,负载均衡器则从候选数据连接对应的5台服务器中确定目标数据连接,目标数据连接对应的总数据流量等于或接近8334bps,从而使候选数据连接对应的5台服务器和待上线的1台服务器的数据流量都接近8334bps,即实现负载均衡的目的。
本发明实施例提供的方案中,通过均衡各服务器的数据流量来实现负载均衡,这样可以提高更精确的均衡各服务器的负载。
可选的,负载均衡器将目标数据连接迁移至待上线的服务器之后,还可以向目标数据连接对应的客户端和先前连接的服务器发送重连指令,以使目标数据连接对应的客户端与待上线的服务器建立数据连接。
在实施中,负载均衡器将目标数据连接迁移至待上线的服务器之后,还可以向目标数据连接对应的客户端和先前连接的服务器发送重连指令(即reset(重置)请求消息),以此告知目标数据连接对应的客户端和先前连接的服务器断开先前的数据连接。然后,负载均衡器使该客户端与待上线的服务器重新建立数据连接,待上线的服务器可以通过该数据连接向目标数据连接对应的客户端发送业务数据。
本发明实施例提供的方案中,在负载均衡器可以向目标数据连接对应的客户端和待上线的服务器发送重连指令,这样用于确保在传输业务数据之前数据连接已经建立,从而提高传输业务数据的安全性。
可选的,负载均衡器在接收待上线的服务器的注册请求消息之后,还可以向待上线的服务器发送注册探测消息,如果接收到待上线的服务器返回的注册应答消息,则执行获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间的步骤;如果未接收到待上线的服务器返回的注册应答消息,则结束本次注册处理。
在实施中,负载均衡器在接收待上线的服务器的注册请求消息之后,还可以向待上线的服务器发送注册探测消息,注册探测消息可以探测待上线的服务器的端口是否打开,如果待上线的服务器的端口已经打开,待上线的服务器则向负载均衡器发送注册应答消息,负载均衡器接收到注册应答消息之后,则执行获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间的步骤;如果待上线的服务器有故障或者端口未打开,待上线的服务器则不会向负载均衡器发送注册应答消息,负载均衡器在未接收到注册应答消息时,则结束本次注册处理。
本发明实施例提供的方案中,负载均衡器在迁移目标数据连接之前,先判断待上线的服务器是否正常运行,在确定待上线的服务器正常运行时,才迁移目标数据连接,这样可以提高迁移数据连接的安全性。
本发明实施例提供了一种实现负载均衡的方法,可以接收待上线的服务器的注册请求消息,然后获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间,然后在数据连接中,确定空闲时间大于预设阈值的候选数据连接,再根据预设的迁移策略,在候选数据连接中确定目标数据连接,最后将目标数据连接迁移至待上线的服务器。采用本发明提供的方法,在待上线的服务器投入使用时,可以及时地将服务器集群中其它服务器中的负载迁移到待上线的服务器,从而均衡各服务器的负载。
基于相同的技术构思,相应于图1所示方法实施例,本发明实施例还提供了一种实现负载均衡的装置,如图2所示,该装置包括:
接收模块201,用于接收待上线的服务器发送的注册请求消息;
获取模块202,用于获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间;
第一确定模块203,用于在所述数据连接中,确定空闲时间大于预设阈值的候选数据连接;
第二确定模块204,用于根据预设的迁移策略,在所述候选数据连接中确定目标数据连接;
迁移模块205,用于将所述目标数据连接迁移至所述待上线的服务器。
可选的,所述第二确定模块,包括:
第一计算模块,用于根据所述候选数据连接对应的各服务器的数据连接的总数目和所述候选数据连接对应的各服务器与待上线的服务器的总数目,计算平均数据连接数目;
第三确定模块,用于分别确定所述候选数据连接对应的各服务器中的目标数据连接,所述目标数据连接的总数目等于所述平均数据连接数目。
本发明实施例提供的方案中,通过均衡各服务器的数据连接的数目来实现负载均衡,这样可以提高完成负载均衡的速率。
可选的,所述第二确定模块,包括:
第一计算模块,用于根据所述候选数据连接对应的各服务器的总数据流量和所述候选数据连接对应的各服务器与待上线的服务器的总数目,计算平均数据流量;
第四确定模块,用于分别确定所述候选数据连接对应的各服务器中的目标数据连接,所述目标数据连接对应的总数据流量等于所述平均数据流量。
本发明实施例提供的方案中,通过均衡各服务器的数据流量来实现负载均衡,这样可以提高更精确的均衡各服务器的负载。
可选的,所述迁移模块,还用于:
向所述目标数据连接对应的客户端和先前连接的服务器发送重连指令,以使所述目标数据连接对应的客户端与所述待上线的服务器建立数据连接。
本发明实施例提供的方案中,在负载均衡器可以向目标数据连接对应的客户端和待上线的服务器发送重连指令,这样用于确保在传输业务数据之前数据连接已经建立,从而提高传输业务数据的安全性。
可选的,所述接收模块,还用于:
向所述待上线的服务器发送注册探测消息,如果接收到所述待上线的服务器返回的注册应答消息,则执行所述获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间的步骤;
如果未接收到所述待上线的服务器返回的注册应答消息,则结束本次注册处理。
本发明实施例提供的方案中,负载均衡器在迁移目标数据连接之前,先判断待上线的服务器是否正常运行,在确定待上线的服务器正常运行时,才迁移目标数据连接,这样可以提高迁移数据连接的安全性。
本发明实施例提供了一种实现负载均衡的装置,可以接收待上线的服务器的注册请求消息,然后获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间,然后在数据连接中,确定空闲时间大于预设阈值的候选数据连接,再根据预设的迁移策略,在候选数据连接中确定目标数据连接,最后将目标数据连接迁移至待上线的服务器。采用本发明提供的方法,在待上线的服务器投入使用时,可以及时地将服务器集群中其它服务器中的负载迁移到待上线的服务器,从而均衡各服务器的负载。
本发明实施例还提供了一种电子设备,如图3所示,包括处理器301、通信接口302、存储器303和通信总线304,其中,处理器301,通信接口302,存储器303通过通信总线304完成相互间的通信,
存储器303,用于存放计算机程序;
处理器301,用于执行存储器303上所存放的程序时,实现本发明实施例提供的实现负载均衡的方法。
具体的,上述实现负载均衡的方法,包括:
接收待上线的服务器发送的注册请求消息;
获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间;
在所述数据连接中,确定空闲时间大于预设阈值的候选数据连接;
根据预设的迁移策略,在所述候选数据连接中确定目标数据连接;
将所述目标数据连接迁移至所述待上线的服务器。
需要说明的是,上述实现负载均衡的方法的其他实现方式与前述方法实施例部分相同,这里不再赘述。
上述电子设备的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的实现负载均衡的方法。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的实现负载均衡的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
本发明实施例提供了一种实现负载均衡的方法、装置及电子设备,可以接收待上线的服务器的注册请求消息,然后获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间,然后在数据连接中,确定空闲时间大于预设阈值的候选数据连接,再根据预设的迁移策略,在候选数据连接中确定目标数据连接,最后将目标数据连接迁移至待上线的服务器。采用本发明提供的方法,在待上线的服务器投入使用时,可以及时地将服务器集群中其它服务器中的负载迁移到待上线的服务器,从而均衡各服务器的负载。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

Claims (11)

1.一种实现负载均衡的方法,其特征在于,所述方法包括:
接收待上线的服务器发送的注册请求消息;
获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间;
在所述数据连接中,确定空闲时间大于预设阈值的候选数据连接;
根据预设的迁移策略,在所述候选数据连接中确定目标数据连接;
将所述目标数据连接迁移至所述待上线的服务器。
2.根据权利要求1所述的方法,其特征在于,所述根据预设的迁移策略,在所述候选数据连接中确定目标数据连接,包括:
根据所述候选数据连接对应的各服务器的数据连接的总数目和所述候选数据连接对应的各服务器与待上线的服务器的总数目,计算平均数据连接数目;
分别确定所述候选数据连接对应的各服务器中的目标数据连接,所述目标数据连接的总数目等于所述平均数据连接数目。
3.根据权利要求1所述的方法,其特征在于,所述根据预设的迁移策略,在所述候选数据连接中确定目标数据连接,包括:
根据所述候选数据连接对应的各服务器的总数据流量和所述候选数据连接对应的各服务器与待上线的服务器的总数目,计算平均数据流量;
分别确定所述候选数据连接对应的各服务器中的目标数据连接,所述目标数据连接对应的总数据流量等于所述平均数据流量。
4.根据权利要求1所述的方法,其特征在于,所述将所述目标数据连接迁移至所述待上线的服务器之后,还包括:
向所述目标数据连接对应的客户端和先前连接的服务器发送重连指令,以使所述目标数据连接对应的客户端与所述待上线的服务器建立数据连接。
5.根据权利要求1所述的方法,其特征在于,所述接收待上线的服务器的注册请求消息之后,还包括:
向所述待上线的服务器发送注册探测消息,如果接收到所述待上线的服务器返回的注册应答消息,则执行所述获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间的步骤;
如果未接收到所述待上线的服务器返回的注册应答消息,则结束本次注册处理。
6.一种实现负载均衡的装置,其特征在于,所述装置包括:
接收模块,用于接收待上线的服务器发送的注册请求消息;
获取模块,用于获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间;
第一确定模块,用于在所述数据连接中,确定空闲时间大于预设阈值的候选数据连接;
第二确定模块,用于根据预设的迁移策略,在所述候选数据连接中确定目标数据连接;
迁移模块,用于将所述目标数据连接迁移至所述待上线的服务器。
7.根据权利要求6所述的装置,其特征在于,所述第二确定模块,包括:
第一计算模块,用于根据所述候选数据连接对应的各服务器的数据连接的总数目和所述候选数据连接对应的各服务器与待上线的服务器的总数目,计算平均数据连接数目;
第三确定模块,用于分别确定所述候选数据连接对应的各服务器中的目标数据连接,所述目标数据连接的总数目等于所述平均数据连接数目。
8.根据权利要求6所述的装置,其特征在于,所述第二确定模块,包括:
第一计算模块,用于根据所述候选数据连接对应的各服务器的总数据流量和所述候选数据连接对应的各服务器与待上线的服务器的总数目,计算平均数据流量;
第四确定模块,用于分别确定所述候选数据连接对应的各服务器中的目标数据连接,所述目标数据连接对应的总数据流量等于所述平均数据流量。
9.根据权利要求6所述的装置,其特征在于,所述迁移模块,还用于:
向所述目标数据连接对应的客户端和先前连接的服务器发送重连指令,以使所述目标数据连接对应的客户端与所述待上线的服务器建立数据连接。
10.根据权利要求6所述的装置,其特征在于,所述接收模块,还用于:
向所述待上线的服务器发送注册探测消息,如果接收到所述待上线的服务器返回的注册应答消息,则执行所述获取服务器集群中各服务器与各客户端之间的数据连接的空闲时间的步骤;
如果未接收到所述待上线的服务器返回的注册应答消息,则结束本次注册处理。
11.一种电子设备,其特征在于,所述电子设备包括处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现权利要求1-5任一所述的方法步骤。
CN201810193187.XA 2018-03-09 2018-03-09 一种实现负载均衡的方法、装置及电子设备 Active CN108200218B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810193187.XA CN108200218B (zh) 2018-03-09 2018-03-09 一种实现负载均衡的方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810193187.XA CN108200218B (zh) 2018-03-09 2018-03-09 一种实现负载均衡的方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN108200218A true CN108200218A (zh) 2018-06-22
CN108200218B CN108200218B (zh) 2021-11-26

Family

ID=62595411

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810193187.XA Active CN108200218B (zh) 2018-03-09 2018-03-09 一种实现负载均衡的方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN108200218B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110941513A (zh) * 2019-11-22 2020-03-31 浪潮电子信息产业股份有限公司 一种数据重构方法及相关装置
CN111444008A (zh) * 2018-12-29 2020-07-24 北京奇虎科技有限公司 集群间服务迁移方法及装置
CN112882714A (zh) * 2021-02-04 2021-06-01 中国工商银行股份有限公司 SonarQube服务器集群扩容方法及装置
CN113177179A (zh) * 2021-04-30 2021-07-27 平安证券股份有限公司 数据请求连接管理方法、装置、设备及存储介质
CN114900526A (zh) * 2022-04-28 2022-08-12 京东科技信息技术有限公司 负载均衡方法及系统、计算机存储介质、电子设备
CN116055565A (zh) * 2023-01-28 2023-05-02 北京蓝色星际科技股份有限公司 一种数据传输方法、系统、装置、电子设备及存储介质

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1665206A (zh) * 2004-03-03 2005-09-07 华为技术有限公司 实现网络长连接倒换的方法
US20060018329A1 (en) * 2004-07-26 2006-01-26 Enigma Semiconductor Network interconnect crosspoint switching architecture and method
CN1852502A (zh) * 2006-05-29 2006-10-25 杭州华为三康技术有限公司 一种集群系统中实现负载均衡的方法、系统和存储控制器
US20060294184A1 (en) * 2002-02-15 2006-12-28 Agnoli Giovanni M System, method, and computer program product for media publishing request processing
CN101599982A (zh) * 2008-06-06 2009-12-09 广东宇天信通通信科技有限公司 手机信息浏览装置、系统及实现方法
CN102571991A (zh) * 2012-03-27 2012-07-11 电子科技大学 基于多级映射的大规模多副本分布式存储系统及其应用方法
CN103974140A (zh) * 2013-02-06 2014-08-06 中国科学院声学研究所 一种基于tr069协议的大规模交互电视终端管理方法及系统
US20150358402A1 (en) * 2014-06-10 2015-12-10 Alcatel-Lucent Usa, Inc. Efficient and scalable pull-based load distribution
CN106612296A (zh) * 2015-10-21 2017-05-03 阿里巴巴集团控股有限公司 一种用户设备连接请求分配的方法及装置
CN107135279A (zh) * 2017-07-07 2017-09-05 网宿科技股份有限公司 一种处理长连接建立请求的方法和装置
CN107483350A (zh) * 2017-07-11 2017-12-15 北京潘达互娱科技有限公司 一种网关分配方法与装置

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060294184A1 (en) * 2002-02-15 2006-12-28 Agnoli Giovanni M System, method, and computer program product for media publishing request processing
CN1665206A (zh) * 2004-03-03 2005-09-07 华为技术有限公司 实现网络长连接倒换的方法
US20060018329A1 (en) * 2004-07-26 2006-01-26 Enigma Semiconductor Network interconnect crosspoint switching architecture and method
CN1852502A (zh) * 2006-05-29 2006-10-25 杭州华为三康技术有限公司 一种集群系统中实现负载均衡的方法、系统和存储控制器
CN101599982A (zh) * 2008-06-06 2009-12-09 广东宇天信通通信科技有限公司 手机信息浏览装置、系统及实现方法
CN102571991A (zh) * 2012-03-27 2012-07-11 电子科技大学 基于多级映射的大规模多副本分布式存储系统及其应用方法
CN103974140A (zh) * 2013-02-06 2014-08-06 中国科学院声学研究所 一种基于tr069协议的大规模交互电视终端管理方法及系统
US20150358402A1 (en) * 2014-06-10 2015-12-10 Alcatel-Lucent Usa, Inc. Efficient and scalable pull-based load distribution
CN106612296A (zh) * 2015-10-21 2017-05-03 阿里巴巴集团控股有限公司 一种用户设备连接请求分配的方法及装置
CN107135279A (zh) * 2017-07-07 2017-09-05 网宿科技股份有限公司 一种处理长连接建立请求的方法和装置
CN107483350A (zh) * 2017-07-11 2017-12-15 北京潘达互娱科技有限公司 一种网关分配方法与装置

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111444008A (zh) * 2018-12-29 2020-07-24 北京奇虎科技有限公司 集群间服务迁移方法及装置
CN111444008B (zh) * 2018-12-29 2024-04-16 北京奇虎科技有限公司 集群间服务迁移方法及装置
CN110941513A (zh) * 2019-11-22 2020-03-31 浪潮电子信息产业股份有限公司 一种数据重构方法及相关装置
CN110941513B (zh) * 2019-11-22 2022-03-22 浪潮电子信息产业股份有限公司 一种数据重构方法及相关装置
CN112882714A (zh) * 2021-02-04 2021-06-01 中国工商银行股份有限公司 SonarQube服务器集群扩容方法及装置
CN112882714B (zh) * 2021-02-04 2024-01-30 中国工商银行股份有限公司 SonarQube服务器集群扩容方法及装置
CN113177179A (zh) * 2021-04-30 2021-07-27 平安证券股份有限公司 数据请求连接管理方法、装置、设备及存储介质
CN113177179B (zh) * 2021-04-30 2023-11-21 平安证券股份有限公司 数据请求连接管理方法、装置、设备及存储介质
CN114900526A (zh) * 2022-04-28 2022-08-12 京东科技信息技术有限公司 负载均衡方法及系统、计算机存储介质、电子设备
CN114900526B (zh) * 2022-04-28 2024-04-16 京东科技信息技术有限公司 负载均衡方法及系统、计算机存储介质、电子设备
CN116055565A (zh) * 2023-01-28 2023-05-02 北京蓝色星际科技股份有限公司 一种数据传输方法、系统、装置、电子设备及存储介质
CN116055565B (zh) * 2023-01-28 2023-06-06 北京蓝色星际科技股份有限公司 一种数据传输方法、系统、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN108200218B (zh) 2021-11-26

Similar Documents

Publication Publication Date Title
CN108200218A (zh) 一种实现负载均衡的方法、装置及电子设备
CN108418884A (zh) 一种传输业务数据的方法、装置及电子设备
CN107948284A (zh) 一种基于微服务架构的服务下线方法、设备和系统
CN105610632A (zh) 一种虚拟网络设备及相关方法
CN111163130B (zh) 一种网络服务系统及其数据传输方法
CN105262698A (zh) 一种负载分担的方法、装置和系统
JP4190455B2 (ja) 負荷分散装置及びプログラム
CN101815033A (zh) 负载均衡的方法、设备及系统
CN109510878A (zh) 一种长连接会话保持方法和装置
CN104506549A (zh) 建立网游连接的方法、设备及系统
CN108055338A (zh) 一种iscsi访问负载均衡方法
US8416754B2 (en) Network location based processing of data communication connection requests
CN108829526A (zh) 一种进程间通信方法、电子设备及可读存储介质
US20220046028A1 (en) Method and system for determining a state of an account in a network device running a light client protocol of a distributed ledger technology network
CN109618004A (zh) 一种报文转发方法及装置
US9692685B2 (en) Heterogeneous network system, network apparatus, and rendezvous path selection method thereof
CN110535959A (zh) 一种传输数据的方法、装置和计算机可读存储介质
CN113726881B (zh) 通信连接建立方法、相关装置及计算机可读存储介质
CN110838967B (zh) 虚拟专用网络的连接方法、服务器、客户端和存储介质
CN111416852A (zh) 在多个负载均衡器之间进行会话同步的方法和负载均衡器
CN108111431B (zh) 业务数据发送方法、装置、计算设备及计算机可读存储介质
CN116260855B (zh) 通信方法、装置、电子设备以及存储介质
CN116938598B (zh) 信息发送方法、装置、电子设备和计算机可读介质
US11930069B1 (en) HTTP/3 and HTTP/2 connectivity detection using parallel probes for preferred protocol selection
CN112532699B (zh) 数据端口的更新方法、装置、电子设备及可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant