CN106997310A - 负载均衡的装置和方法 - Google Patents

负载均衡的装置和方法 Download PDF

Info

Publication number
CN106997310A
CN106997310A CN201610054629.3A CN201610054629A CN106997310A CN 106997310 A CN106997310 A CN 106997310A CN 201610054629 A CN201610054629 A CN 201610054629A CN 106997310 A CN106997310 A CN 106997310A
Authority
CN
China
Prior art keywords
information
node
module
data
processing
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.)
Pending
Application number
CN201610054629.3A
Other languages
English (en)
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.)
Huawei Technologies Co Ltd
Original Assignee
Hangzhou Huawei Digital 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 Huawei Digital Technologies Co Ltd filed Critical Hangzhou Huawei Digital Technologies Co Ltd
Priority to CN201610054629.3A priority Critical patent/CN106997310A/zh
Publication of CN106997310A publication Critical patent/CN106997310A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种负载均衡的装置和方法。该装置包括:检测模块,用于检测处理时间信息和消息队列信息,其中,该处理时间信息为计算机***中的至少两个节点中的每个节点处理数据的时间的信息,该消息队列信息为该至少两个节点之间进行数据传输的消息队列的信息;处理模块,用于根据第一预定周期内的该检测模块检测的该处理时间信息和该消息队列信息生成该至少两个节点中的每个节点的数据处理负荷的波动信息;线程管理模块,用于根据该处理模块生成的该波动信息调整该至少两个节点中的每个节点处理数据的线程数目。本发明实施例的负载均衡的装置和方法,能够更加合理的利用资源。

Description

负载均衡的装置和方法
技术领域
本发明涉及信息技术领域,并且更具体地,涉及一种负载均衡的装置和方法。
背景技术
在计算***中,对于大量存在的实时数据,例如股票交易数据、交通流量数据等,这类数据的实时性较强、数据量大,导致计算***中各个节点之间负载经常会出现不均衡的情况。例如,在交通流量监测***中,上下班高峰期时某个地区的车流量会大量增加,使得负责处理该地区流量计算的节点的负荷急速增加,而别的地区的节点相对比较空闲,从而导致交通流量监测***中各个节点负载不均衡。
现有技术面对大量的实时数据时,只能通过类似重启的操作对各个节点的资源进行重新分配和调整,严重影响了资源的利用率,效率较低。
发明内容
本发明实施例提供了一种负载均衡的装置和方法,能够更加合理的利用资源。
第一方面,提供了一种负载均衡的装置,包括:检测模块,用于检测处理时间信息和消息队列信息,其中,该处理时间信息为计算***中的至少两个节点中的每个节点处理数据的时间的信息,该消息队列信息为该至少两个节点之间进行数据传输的消息队列的信息;处理模块,用于根据该检测模块检测的该处理时间信息和该消息队列信息生成该至少两个节点中的每个节点的数据处理负荷的波动信息;线程管理模块,用于根据该处理模块生成的该波动信息调整该至少两个节点中的每个节点处理数据的线程数目。
本发明实施例的负载均衡的装置,通过检测处理时间信息和消息队列信息,根据该处理时间信息和消息队列信息生成波动信息,能够根据该波动信息对节点的线程数目进行动态调整,从而更加合理的利用资源。
结合第一方面,在第一种可能的实现方式中,该装置还包括:
收集模块,用于收集该处理模块生成的该波动信息,得到第一历史数据。
这里,收集模块收集的该波动信息,可以是短周期内的波动信息,得到该短周期内的历史数据。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,该处理模块具体用于根据该收集模块收集的该第一历史数据、该处理时间信息和该消息队列信息生成该波动信息。
处理模块根据短周期内的历史数据以及该处理时间信息和该消息队列信息生成该波动信息。
结合第一方面的第一种可能的实现方式,在第三种可能的实现方式中,该装置还包括:优化模块,用于对该收集模块收集的该第一历史数据中的该波动信息按照预定周期进行优化,得到第二历史数据;
该处理模块具体用于根据该第二历史数据、该处理时间信息和该消息队列信息生成该波动信息。
这里,优化模块对收集模块收集的第一历史数据中的该波动信息按照长周期进行优化,得到长周期内的历史数据,处理模块根据长周期内的历史数据、该处理时间信息和该消息队列信息生成该波动信息。
结合上述任一种可能的实现方式,在第四种可能的实现方式中,该检测模块包括第一检测子模块和第二检测子模块,该第一检测子模块用于检测该处理时间信息,该第二检测子模块用于检测该消息队列信息。
检测子模块的具体形式可以是探针,第一检测子模块为处理时间探针,第二检测子模块为消息队列探针。
第二方面,提供了一种计算***,包括:至少两个节点和第一方面或第一方面的任意可能的实现方式中该的负载均衡装置,其中,该至少两个节点中的每个节点能够处理数据,该至少两个节点之间存在进行数据传输的消息队列。
第三方面,提供了一种负载均衡的装置,该装置包括:接收器、发送器、存储器、处理器和总线***。其中,该接收器、该发送器、该存储器和该处理器通过该总线***相连,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制接收器接收信号,并控制发送器发送信号,并且当该处理器执行该存储器存储的指令时,该执行使得该处理器执行第一方面或第一方面的任意可能的实现方式中的***的操作。
第四方面,提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括用于执行第一方面或第一方面的任意可能的实现方式中的指令。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是Storm***的拓扑结构的示意图。
图2是根据本发明实施例的负载均衡装置的示意图。
图3是根据本发明另一实施例的负载均衡装置的示意图。
图4是根据本发明再一实施例的负载均衡装置的示意图。
图5是根据本发明实施例的负载均衡装置的举例示意图。
图6是根据本发明实施例的负载均衡装置的方法示意图。
图7是根据本发明另一实施例的负载均衡方法的流程示意图。
图8是根据本发明再一实施例的负载均衡方法的流程示意图。
图9是根据本发明实施例的负载均衡装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的技术方案,可以应用于计算***中,例如,Storm***、Spark***、Samza***等。或者,只要计算***采用了消息中间件(ActiveMessenger,简称为“AM”)作为计算***中节点之间数据传输方式,都可以应用本发明的技术方案。本发明实施例仅以Storm***为例进行描述,而不应对本发明实施例构成任何限制,本发明实施例也同样适用于其他的计算***中。
在介绍本发明实施例的负载均衡的装置之前,先结合图1介绍下Storm***的拓扑结构图。Storm***通过拓扑Topology描述各个计算节点的拓扑结构模型,流入的数据会按照已经定义好的数据流通拓扑来依次流通,以此实现数据的分布式处理。如图1所示,每个拓扑是由多个计算节点组成的结构图,该多个计算节点主要分为数据源Spout和数据处理节点Bolt两种类型。每个节点在处理数据时均需要适量的线程数目。其中,Spout节点负责将自己生产的数据流或者接收到的外部数据流发送至连通的下一个Bolt节点,Bolt节点负责对接收到的数据流进行处理,而后继续发送至下一个Bolt节点,继而数据流汇总到节点上输出数据。节点之间通过数组Tuple数据进行流通,Tuple数据即不停地流通在各个节点的数据片段。在该Topology中,多个Bolt节点可以串联和/或并联,也可以分离和/或汇总,数据流通结构遵循有向无环图的原则,可以通过多种组合构成复杂的业务拓扑模型,以适应应用需求。
这个拓扑会通过代码(例如Jar命令)上传、部署到Storm集群中运行,运行中的Storm应用会独立成一个***服务式的Storm任务,该任务只能通过手动的命令来进行关闭,它会一直运行在该Storm集群中,一旦有符合任务要求的数据到来,就对接收的数据进行处理并输出。一般来说,一个部署成功的Storm应用,各个节点的运行配置已经确定,除非进行类似重启的操作,否则一般无法第二次对各个节的资源配置进行分配和调整。而对于***的大数据流通,一个无法实时调整的资源配置,必然面临严峻的负载均衡问题,本发明就是为了解决这个问题而提出一种负载均衡的装置,通过该装置均衡各个节点的资源消耗,从而提高Storm计算***的处理效能和稳定性。
图2示出了根据本发明实施例的负载均衡的装置200的示意图。如图2所示,该装置200包括:
检测模块210,用于检测处理时间信息和消息队列信息,其中,该处理时间信息为计算***中的至少两个节点中的每个节点处理数据的时间的信息,该消息队列信息为该至少两个节点之间进行数据传输的消息队列的信息;
处理模块220,用于根据该检测模块210检测的该处理时间信息和该消息队列信息生成该至少两个节点中的每个节点的数据处理负荷的波动信息;
线程管理模块230,用于根据该处理模块220生成的该波动信息调整该至少两个节点中的每个节点处理数据的线程数目。
具体而言,检测模块用于检测处理时间信息和消息队列信息,其中,该处理时间信息为计算***(例如storm***)中多个节点中的每个节点处理数据所需的时间的信息,该消息队列信息为该多个节点之间进行数据传输的消息队列的信息,例如,检测模块可以记录、排序和统计一段时间内各个节点之间的消息队列堆积信息(长度信息)。处理模块结合该检测模块检测的多个处理时间信息和消息队列信息生成每个节点的数据处理负荷的波动信息。这里,检测模块检测的多个处理时间信息和消息队列信息为多个数据,处理模块将该多个数据整合出一段时间内(例如,某一小时内)的一套数据波动趋势(或节点波动配置)。从而,线程管理模块根据该波动信息对每个节点处理数据所需的线程数目进行调整,例如,每次新来数据后,根据数据波动趋势,对节点处理数据的线程数目进行增加或减少,实时对线程数目的调整,使得各个节点的数据处理负荷相对平衡,不会因为数据过多线程不足而造成节点压力过大,也不会因为数据太少线程过余使得节点空闲而浪费资源,从而达到负载均衡的目的。
这里,数据波动趋势(或节点波动配置)是指处理模块根据检测到的信息整合出某段时间内各个节点的配置信息,对于新来的数据,节点可以按照该节点波动配置信息配置线程数目。例如,在数据波动趋势中,如果新来的数据的处理时间较长,消息的队列也比较长,处于节点的上升趋势时,则随之而来的节点负载出现上升,需要增加线程数目,以满足节点的处理负荷的需求,反之亦然。
因此,本发明实施例的负载均衡的装置,通过检测处理时间信息和消息队列信息,根据该处理时间信息和消息队列信息生成波动信息,能够根据该波动信息对节点的线程数目进行动态调整,从而更加合理的利用资源。
可选地,该检测模块210包括第一检测子模块和第二检测子模块,该第一检测子模块用于检测该处理时间信息,该第二检测子模块用于检测该消息队列信息。
具体而言,在计算***中,第一检测模块和第二检测模块的具体表现形式可以为探针。处理时间探针可以实时标记每一条消息在各个节点的处理时间,并记录统计某段时间内各个节点处理消息的时间,消息队列探针可以实时监控各个节点之间进行数据传输的消息队列,记录、排序和统计某段时间内的消息队列堆积信息。例如,在storm计算***中,结合使用该两个探针,可以更加精准的统计各个节点(Spoult和/或Bolt)的负载指标。
本发明实施例的负载均衡的装置,通过两个探针的结合使用,更精准得检测到处理时间信息和消息队列信息,根据该处理时间信息和消息队列信息生成波动信息,能够根据该波动信息对节点的线程数目进行动态调整,从而更加合理的利用资源。
可选地,如图3所示,该装置200还可以包括:
收集模块240,用于收集该处理模块220生成的该波动信息,得到第一历史数据。
具体而言,收集模块收集、统计该处理模块生成的该波动信息,得到第一历史数据,例如,在交通流量监测***中,收集模块可以收集上班高峰期8点到9点之间节点的数据处理负荷的波动信息,根据该波动信息得到该一小时内的历史数据。
可选地,作为一个实施例,该处理模块220具体用于根据该收集模块收集的该第一历史数据、该处理时间信息和该消息队列信息生成该波动信息。
例如,在本发明实施例中,处理模块220可以根据收集模块240收集的上班高峰期8点到9点之间节点的数据处理负荷的波动信息对应的历史数据,同时结合探针检测到的处理时间信息和消息队列信息,生成波动信息。
可选地,作为一个实施例,如图4所示,该装置200还可以包括:
优化模块250,用于对该收集模块240收集的该第一历史数据中的该波动信息按照预定周期进行优化,得到第二历史数据;
该处理模块220具体用于根据该第二历史数据、该处理时间信息和该消息队列信息生成该波动信息。
具体而言,优化模块对收集模块收集的该第一历史数据中的该波动信息按照预定周期进行优化,得到第二历史数据,预定周期可以理解为相对于第一历史数据的时间段更长的时间周期,例如,第一历史数据对应某一天的一个小时,预定周期为一天。优化模块对第一历史数据的波动信息按照长周期进行优化后,得到对应的历史数据,例如,第二历史数据,处理模块根据该第二历史数据、探针检测的处理时间信息和消息队列信息生成对应的波动信息。
例如,在本发明实施例中,优化模块对收集到的8点到9点之间的波动信息按照一天的周期进行优化,得到在这一天内8点到9点之间波动信息对应的历史数据,节点处理模块220可以根据该对应的历史数据,结合探针检测到的处理时间信息和消息队列信息,生成波动信息。
这里,优化模块能够对收集模块收集的历史数据进行批量管理,直观地对比数据在不同的周期、不同的配置时数据流通的情况,从而得到最优的线程数目配置。
应理解,在本发明实施例中,编号“第一”、“第二”…仅仅为了区分不同的对象,比如为了区分不同的历史数据或模块,并不对本发明实施例的范围构成限制,本发明并不限于此。
因此,本发明实施例的负载均衡的装置,通过检测处理时间信息和消息队列信息,根据该处理时间信息和消息队列信息生成波动信息,能够根据该波动信息对节点的线程数目进行动态调整,从而更加合理的利用资源。
下面将结合图5描述根据本发明实施例的负载均衡装置的举例具体示意图。应理解,仅以图5为例进行说明,并不对本发明构成限定。
图5中,Storm***包括数据源节点Spout(可自己生成数据或接收外部数据)、处理数据节点Bolt A、处理数据节点Bolt B、处理数据节点Bolt C、线程管理模块(例如Thread Manager)、检测模块和处理模块,可选地,还可以包括收集模块(例如Prediction模块)和优化模块(例如Scheduler模块)。其中,检测模块和处理模块可以统称为Flag Manager模块,检测模块可以具体包括两个探针。如图5所示,检测模块(探针)可以实时检测各个节点的处理时间信息和每一条消息在各个节点之间进行数据传输的消息队列的信息,处理模块根据检测模块检测的处理时间信息和消息队列的信息生成每个节点的数据处理负荷的波动信息,例如,生成可参照的配置参数值,线程管理模块根据该波动信息对每个节点处理数据的线程数目进行调整,例如,进行+/-Thread的操作。可选地,收集模块收集处理模块生成的波动信息,得到短周期内的第一历史数据,处理模块可根据该第一历史数据以及处理时间信息和该消息队列信息生成该波动信息。可选地,优化模块可以对该第一历史数据的波动信息按照长周期进行优化,得到第二历史数据,处理模块可根据该第二历史数据以及以及处理时间信息和该消息队列信息生成该波动信息。从而根据该波动信息对节点的线程数目进行动态调整,能够更加合理的利用资源。
因此,本发明实施例的负载均衡的装置,通过检测处理时间信息和消息队列信息,根据该处理时间信息和消息队列信息生成波动信息,能够根据该波动信息对节点的线程数目进行动态调整,从而更加合理的利用资源。
上文中结合图1至图5,详细描述了根据本发明实施例的负载均衡的装置。下面将结合图6至图8,描述根据本发明实施例的负载均衡的方法。图6至图8的负载均衡的方法分别由图2至图4中的负载均衡的装置执行。
图6示出了根据本发明实施例的负载均衡的方法600的示意性流程图。如图6所示,该方法600包括:
S610,检测处理时间信息和消息队列信息,其中,该处理时间信息为计算中的至少两个节点中的每个节点处理数据的时间的信息,该消息队列信息为该至少两个节点之间进行数据传输的消息队列的信息;
S620,根据该处理时间信息和该消息队列信息生成该至少两个节点中的每个节点的数据处理负荷的波动信息;
S630,根据该波动信息调整该至少两个节点中的每个节点处理数据的线程数目。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本发明实施例的负载均衡的方法,通过检测处理时间信息和消息队列信息,根据该处理时间信息和消息队列信息生成波动信息,能够根据该波动信息对节点的线程数目进行动态调整,从而更加合理的利用资源。
可选地,如图7所示,该方法600还可以包括:
S640,收集该波动信息,得到第一历史数据。
可选地,该根据该处理时间信息和该消息队列信息生成该至少两个节点中的每个节点的数据处理负荷的波动信息,包括:
根据该第一历史数据、该处理时间信息和该消息队列信息生成该波动信息。
可选地,如图8所示,该方法600还可以包括:
S650,对该第一历史数据中的该波动信息按照预定周期进行优化,得到第二历史数据;
其中,该根据该处理时间信息和该消息队列信息生成该至少两个节点中的每个节点的数据处理负荷的波动信息,包括:
根据该第二历史数据、该处理时间信息和该消息队列信息生成该波动信息。
因此,本发明实施例的负载均衡的方法,通过检测处理时间信息和消息队列信息,根据该处理时间信息和消息队列信息生成波动信息,能够根据该波动信息对节点的线程数目进行动态调整,从而更加合理的利用资源。
本发明实施例还提供了一种计算***,包括:至少两个节点和图2至图4中任一项所述的负载均衡装置,其中,该至少两个节点中的每个节点能够处理数据,该至少两个节点之间存在进行数据传输的消息队列。
图9示出了本发明的实施例提供的负载均衡的装置的结构,包括至少一个处理器902(例如CPU),至少一个网络接口905或者其他通信接口,存储器906,和至少一个通信总线903,用于实现这些装置之间的连接通信。处理器902用于执行存储器906中存储的可执行指令,例如计算机程序。存储器906可能包含高速随机存取存储器(random access memory,RAM),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个网络接口909(可以是有线或者无线)实现与至少一个其他网元之间的通信连接。
在一些实施方式中,上述检测模块、处理模块和进程管理模块可以由处理器902实现:
检测模块,用于检测处理时间信息和消息队列信息,其中,该处理时间信息为计算***中的至少两个节点中的每个节点处理数据的时间的信息,该消息队列信息为该至少两个节点之间进行数据传输的消息队列的信息;
处理模块,用于根据该检测模块检测的该处理时间信息和该消息队列信息生成该至少两个节点中的每个节点的数据处理负荷的波动信息;
线程管理模块,用于根据该处理模块生成的该波动信息调整该至少两个节点中的每个节点处理数据的线程数目。
可选地,还装置包括:
收集模块,用于收集该处理模块生成的该波动信息,得到第一历史数据。
可选地,该处理模块具体用于根据该收集模块收集的该第一历史数据、该处理时间信息和该消息队列信息生成该波动信息。
可选地,还装置包括:
优化模块,用于对该收集模块收集的该第一历史数据中的该波动信息按照预定周期进行优化,得到第二历史数据;
该处理模块具体用于根据该第二历史数据、该处理时间信息和该消息队列信息生成该波动信息。
可选地,该检测模块包括第一检测子模块和第二检测子模块,该第一检测子模块用于检测该处理时间信息,该第二检测子模块用于检测该消息队列信息。
因此,本发明实施例的负载均衡的装置,通过检测处理时间信息和消息队列信息,根据该处理时间信息和消息队列信息生成波动信息,能够根据该波动信息对节点的线程数目进行动态调整,从而更加合理的利用资源。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种负载均衡的装置,其特征在于,包括:
检测模块,用于检测处理时间信息和消息队列信息,其中,所述处理时间信息为计算***中的至少两个节点中的每个节点处理数据的时间的信息,所述消息队列信息为所述至少两个节点之间进行数据传输的消息队列的信息;
处理模块,用于根据所述检测模块检测的所述处理时间信息和所述消息队列信息生成所述至少两个节点中的每个节点的数据处理负荷的波动信息;
线程管理模块,用于根据所述处理模块生成的所述波动信息调整所述至少两个节点中的每个节点处理数据的线程数目。
2.根据权利要求1所述的装置,其特征在于,所述装置还包括:
收集模块,用于收集所述处理模块生成的所述波动信息,得到第一历史数据。
3.根据权利要求2所述的装置,其特征在于,所述处理模块具体用于根据所述收集模块收集的所述第一历史数据、所述处理时间信息和所述消息队列信息生成所述波动信息。
4.根据权利要求2所述的装置,其特征在于,所述装置还包括:
优化模块,用于对所述收集模块收集的所述第一历史数据中的所述波动信息按照预定周期进行优化,得到第二历史数据;
所述处理模块具体用于根据所述第二历史数据、所述处理时间信息和所述消息队列信息生成所述波动信息。
5.根据权利要求1至4中任一项所述的装置,其特征在于,所述检测模块包括第一检测子模块和第二检测子模块,所述第一检测子模块用于检测所述处理时间信息,所述第二检测子模块用于检测所述消息队列信息。
6.一种负载均衡的方法,其特征在于,包括:
检测处理时间信息和消息队列信息,其中,所述处理时间信息为计算中的至少两个节点中的每个节点处理数据的时间的信息,所述消息队列信息为所述至少两个节点之间进行数据传输的消息队列的信息;
根据所述处理时间信息和所述消息队列信息生成所述至少两个节点中的每个节点的数据处理负荷的波动信息;
根据所述波动信息调整所述至少两个节点中的每个节点处理数据的线程数目。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
收集所述波动信息,得到第一历史数据。
8.根据权利要求7所述的方法,其特征在于,所述根据所述处理时间信息和所述消息队列信息生成所述至少两个节点中的每个节点的数据处理负荷的波动信息,包括:
根据所述第一历史数据、所述处理时间信息和所述消息队列信息生成所述波动信息。
9.根据权利要求7所述的方法,其特征在于,所述方法还包括:
对所述第一历史数据中的所述波动信息按照预定周期进行优化,得到第二历史数据;
其中,所述根据所述处理时间信息和所述消息队列信息生成所述至少两个节点中的每个节点的数据处理负荷的波动信息,包括:
根据所述第二历史数据、所述处理时间信息和所述消息队列信息生成所述波动信息。
10.一种计算***,其特征在于,包括:至少两个节点和根据权利要求1至5中任一项所述的负载均衡装置,其中,所述至少两个节点中的每个节点能够处理数据,所述至少两个节点之间存在进行数据传输的消息队列。
CN201610054629.3A 2016-01-26 2016-01-26 负载均衡的装置和方法 Pending CN106997310A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610054629.3A CN106997310A (zh) 2016-01-26 2016-01-26 负载均衡的装置和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610054629.3A CN106997310A (zh) 2016-01-26 2016-01-26 负载均衡的装置和方法

Publications (1)

Publication Number Publication Date
CN106997310A true CN106997310A (zh) 2017-08-01

Family

ID=59428457

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610054629.3A Pending CN106997310A (zh) 2016-01-26 2016-01-26 负载均衡的装置和方法

Country Status (1)

Country Link
CN (1) CN106997310A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109343138A (zh) * 2018-09-29 2019-02-15 深圳市华讯方舟太赫兹科技有限公司 一种安检***的负载均衡方法和安检设备
CN111953785A (zh) * 2020-08-14 2020-11-17 中国工商银行股份有限公司 数据传输方法、***及服务器
CN113626447A (zh) * 2021-10-12 2021-11-09 民航成都信息技术有限公司 一种民航数据管理平台及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100498718C (zh) * 2004-07-30 2009-06-10 惠普开发有限公司 为多个实例应用操作负荷均衡器的***和方法
CN102207891B (zh) * 2011-06-10 2013-03-06 浙江大学 对数据划分分布式环境实现动态划分和负载均衡的方法
CN103605574A (zh) * 2013-11-18 2014-02-26 浪潮(北京)电子信息产业有限公司 一种服务器集群中的虚拟机资源调度方法及***
CN104301404A (zh) * 2014-09-29 2015-01-21 华为技术有限公司 一种基于虚拟机的调整业务***资源的方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100498718C (zh) * 2004-07-30 2009-06-10 惠普开发有限公司 为多个实例应用操作负荷均衡器的***和方法
CN102207891B (zh) * 2011-06-10 2013-03-06 浙江大学 对数据划分分布式环境实现动态划分和负载均衡的方法
CN103605574A (zh) * 2013-11-18 2014-02-26 浪潮(北京)电子信息产业有限公司 一种服务器集群中的虚拟机资源调度方法及***
CN104301404A (zh) * 2014-09-29 2015-01-21 华为技术有限公司 一种基于虚拟机的调整业务***资源的方法及装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109343138A (zh) * 2018-09-29 2019-02-15 深圳市华讯方舟太赫兹科技有限公司 一种安检***的负载均衡方法和安检设备
CN111953785A (zh) * 2020-08-14 2020-11-17 中国工商银行股份有限公司 数据传输方法、***及服务器
CN113626447A (zh) * 2021-10-12 2021-11-09 民航成都信息技术有限公司 一种民航数据管理平台及方法

Similar Documents

Publication Publication Date Title
CN104809051B (zh) 用于预测计算机应用中的异常和故障的方法和装置
CN104038540B (zh) 一种应用代理服务器自动选择方法及***
CN102664812B (zh) 融合业务预测与实时负载的两阶段服务***负载预测与均衡方法
CN103595651B (zh) 基于分布式的数据流处理方法和***
CN106844051A (zh) 一种边缘计算环境中功耗优化的负载任务迁移算法
CN102724103B (zh) 代理服务器、分层次网络***及分布式工作负载管理方法
CN109981744B (zh) 数据的分发方法、装置、存储介质及电子设备
CN102711139B (zh) 一种数据流量统计方法及终端
CN107707612B (zh) 一种负载均衡集群的资源利用率的评估方法及装置
CN105007312A (zh) 一种云计算服务器自适应负载均衡控制方法及控制***
CN105049485B (zh) 一种面向实时视频处理的负载感知云计算***
CN102223419A (zh) 面向网络化操作***的虚拟资源动态反馈均衡分配机制
CN106027328A (zh) 一种基于应用容器部署的集群监控的方法及***
CN103401947A (zh) 多个服务器的任务分配方法和装置
CN109831524A (zh) 一种负载均衡处理方法及装置
CN105491138A (zh) 一种基于负载率分级触发的分布式负载调度方法
CN104363282B (zh) 一种云计算资源调度方法及装置
CN108270805B (zh) 用于数据处理的资源分配方法及装置
CN102012891B (zh) 计算机集群管理方法、装置和***
CN109962856A (zh) 资源分配方法、装置以及计算机可读存储介质
CN104901989A (zh) 一种现场服务提供***及方法
CN107291544A (zh) 任务调度的方法及装置、分布式任务执行***
CN106371546A (zh) 一种整机柜功耗限制方法及装置
CN106874120A (zh) 计算节点的处理器资源优化方法、计算节点及服务器集群
CN112261120A (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200415

Address after: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Applicant after: HUAWEI TECHNOLOGIES Co.,Ltd.

Address before: 301, A building, room 3, building 301, foreshore Road, No. 310052, Binjiang District, Zhejiang, Hangzhou

Applicant before: Huawei Technologies Co.,Ltd.

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170801