[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN102457906A - 一种消息队列的负载均衡控制方法及系统 - Google Patents

一种消息队列的负载均衡控制方法及系统 Download PDF

Info

Publication number
CN102457906A
CN102457906A CN2010105233917A CN201010523391A CN102457906A CN 102457906 A CN102457906 A CN 102457906A CN 2010105233917 A CN2010105233917 A CN 2010105233917A CN 201010523391 A CN201010523391 A CN 201010523391A CN 102457906 A CN102457906 A CN 102457906A
Authority
CN
China
Prior art keywords
message queue
depth
business service
queue
application server
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
CN2010105233917A
Other languages
English (en)
Other versions
CN102457906B (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.)
China Mobile Group Henan Co Ltd
Original Assignee
China Mobile Group Henan 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 China Mobile Group Henan Co Ltd filed Critical China Mobile Group Henan Co Ltd
Priority to CN201010523391.7A priority Critical patent/CN102457906B/zh
Publication of CN102457906A publication Critical patent/CN102457906A/zh
Application granted granted Critical
Publication of CN102457906B publication Critical patent/CN102457906B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明公开了一种消息队列的负载均衡控制方法及系统,用以提升控制消息队列负载均衡的灵活性,并实现客户端对消息队列的灵活切换。消息队列的负载均衡控制方法,包括:轮询每一个消息队列的当前深度,当存在当前深度达到预设的队列深度告警阈值的过载消息队列时,生成告警信息,所述告警信息中包括各过载消息队列的标识信息及其当前深度;根据告警信息中各过载消息队列的当前深度、以及业务服务的平均处理能力,分别确定各过载消息队列需要增加的业务服务数量;选取相应数量且满足配置条件的业务服务,增加配置给告警信息中各过载消息队列的标识信息所指示的过载消息队列。

Description

一种消息队列的负载均衡控制方法及系统
技术领域
本发明涉及移动通信技术领域,尤其涉及一种消息队列的负载均衡控制方法及系统。
背景技术
现有移动通信技术领域中,精准营销系统的主要功能是处理信令采集系统、BOSS(Business Operation Support System,业务运营支撑)系统等外部系统产生的大量实时数据,过滤并加工处理产生业务事件,经过应用服务器对业务事件的处理,最终通过适当渠道对用户进行营销。
信令采集系统采集大量的信令数据,例如主被叫、短信收发、位置迁移、小区切换、开关机等,并通过Socket接口发送给精准营销系统的前置机,峰值速率达到1500000条/秒;BOSS系统也产生大量的IT事件发送给精准营销系统的前置机。信令采集系统、BOSS系统等外部系统产生的大量实时数据又是非均衡的,例如信令数据中的主被叫、短信收发在每天的各时间段内表现出非均衡性。针对精准营销系统中大数据量、以及非均衡的实时数据,为了达到高实时性和高可靠性的要求,精准营销系统需要设计为弹性计算结构,分担大数据量、以及非均衡的数据处理,抵挡峰值压力,从而保证精准营销系统的实时性和可靠性。其中,精准营销系统中通过消息封装将业务事件分发给消息队列,因此需要实现消息队列的负载均衡。
现有技术中,消息队列的负载均衡方案,如图1所示:
多个消息队列组成消息队列集群,消息首先发送到主队列,再由主队列进行消息的分发,负载均衡策略由主队列控制;客户端从消息队列集群中固定的消息队列中提取消息进行业务处理。
现有技术中,消息队列的负载均衡方案存在如下问题:
1、多个消息队列组成消息队列集群,消息首先发送到主队列,再由主队列进行消息的分发,负载均衡策略由主队列控制,无法灵活地调整负载均衡策略;
2、客户端从消息队列集群中固定的消息队列中提取消息进行业务处理,客户端无法透明地切换消息队列。
因此,如何提升控制消息队列负载均衡的灵活性,以及实现客户端对消息队列的灵活切换,成为现有技术中亟待解决的技术问题。
发明内容
本发明实施例提供一种消息队列的负载均衡控制方法及系统,用以提升控制消息队列负载均衡的灵活性,并实现客户端对消息队列的灵活切换。
本发明实施例提供的消息队列的负载均衡控制方法,包括:
轮询每一个消息队列的当前深度,当存在当前深度达到预设的队列深度告警阈值的过载消息队列时,生成告警信息,所述告警信息中包括各过载消息队列的标识信息及其当前深度;
根据告警信息中各过载消息队列的当前深度、以及业务服务的平均处理能力,分别确定各过载消息队列需要增加的业务服务数量;
选取相应数量且满足配置条件的业务服务,增加配置给告警信息中各过载消息队列的标识信息所指示的过载消息队列。
本发明实施例提供的消息队列的负载均衡控制系统,包括:
监控模块,用于轮询每一个消息队列的当前深度,当存在当前深度达到预设的队列深度告警阈值的过载消息队列时,生成告警信息发送给平衡控制模块,所述告警信息中包括各过载消息队列的标识信息及其当前深度;
控制子系统,用于根据告警信息中各过载消息队列的当前深度、以及业务服务的平均处理能力,分别确定各过载消息队列需要增加的业务服务数量;选取相应数量且满足配置条件的业务服务,增加配置给告警信息中各过载消息队列的标识信息所指示的过载消息队列。
本发明实施例提供的消息队列的负载均衡控制方法及系统,摒弃了由主队列控制负载均衡的模式,通过轮询每一个消息队列的当前深度,当某一个或多个消息队列的队列深度达到设定的队列深度告警阈值时,确定各过载消息队列需要增加的业务服务数量,并将满足配置条件的业务服务增加配置给各过载消息队列,从而达到了控制消息队列负载均衡的目的,提升了灵活性;业务服务不再从固定的消息队列中提取消息进行业务处理,而是可以根据实际情况灵活为消息队列配置业务服务,实现了客户端对消息队列的灵活切换。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
图1为现有技术中消息队列的负载均衡方案示意图;
图2为本发明实施例中精准营销系统的架构示意图;
图3为本发明实施例中服务管理器管理业务服务的示意图;
图4为本发明实施例中业务服务的注册流程图;
图5为本发明实施例中消息队列的负载均衡控制系统框图;
图6为本发明实施例中消息队列的负载均衡控制方法流程图;
图7为本发明实施例中第一种消息队列的负载均衡控制流程图;
图8为本发明实施例中第二种消息队列的负载均衡控制流程图。
具体实施方式
本发明实施例提供一种消息队列的负载均衡控制方法及系统,用以提升控制消息队列负载均衡的灵活性,并实现客户端对消息队列的灵活切换。
以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明,并且在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
首先,对本发明实施例提供的消息队列的负载均衡控制方案的典型应用场景一一采用弹性计算结构的精准营销系统进行说明。精准营销系统的弹性计算结构建立在采用基于消息中间件的SOA(Service-Oriented Architecture,面向服务架构)之上。SOA是一种架构模型,可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用;服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。精准营销系统的架构,如图2所示:
精准营销系统中,各模块通过消息封装挂接到消息中间件,对外提供服务或向外请求服务。弹性计算的三类主要部件:监控服务、平衡控制服务和业务服务均是以SOA为基础的,在精准营销系统中都以基于消息的服务形式封装和部署。其中,部署了监控服务的功能实体称为监控模块,部署了平衡控制服务的功能实体称为平衡控制模块,部署了业务服务的功能实体称为应用服务器,消息队列部署在队列管理器中。
信令采集系统采集的信令数据、以及BOSS系统产生的IT事件发送给精准营销系统的前置机,前置机中的处理模块对接收到的信令数据或者IT事件进行过滤以及加工处理,得到业务事件;前置机中的分发模块负责对处理模块得到的业务事件进行分发,通过消息封装将业务事件分发给队列管理器中的消息队列,应用服务器中的业务服务再从对应的消息队列中提取业务事件进行处理。
业务服务是精准营销系统封装具体业务事件处理逻辑的服务,将被部署到一个或多个应用服务器。在精准营销系统需要增加业务事件处理能力时,将启动多个业务服务实例,充分利用应用服务器的计算能力进行分布式处理。
与其他系统的业务服务有所不同,每个需要进行弹性调度的业务服务都要向精准营销系统的平衡控制服务报告运行状态,接收启动和停止命令。本发明实施例中,设计了服务管理器分离该部分功能,如图3所示,由服务管理器负责与平衡控制服务交互,完成业务服务的注册,以及启动或停止业务服务。
针对应用服务器中某一特定的业务服务,其注册流程如图4所示,包括如下步骤:
S401、服务管理器向平衡控制模块发起业务服务的注册请求,其中携带业务服务的标识信息;
S402、平衡控制模块根据业务服务的注册请求,通过服务管理器向业务服务发布包括消息队列连接信息的配置消息,消息队列连接信息包括所连接消息队列的标识信息、所连接消息队列所在队列管理器的地址信息;
S403、业务服务根据配置消息中的消息队列连接信息连接到指定的消息队列;
后续,该特定的业务服务即可从所连接的消息队列中获取需要处理的业务事件进行业务处理。
可见,分散部署到一定数量的应用服务器上的业务服务可以作为集群,每个业务服务对应唯一的消息队列,每个消息队列对应一个或多个业务服务。
针对已注册的业务服务,平衡控制服务还可以针对某一特定的业务服务发布启动和停止命令,服务管理器在接收到启动或停止命令之后,启动或停止相应的业务服务。其中:
启动业务服务:
服务管理器将业务服务作为普通线程启动,同时发布状态变更通知,向平衡控制服务报告该业务服务已变更为启动状态;
停止业务服务:
服务管理器调用外部程序将业务服务从循环中正常退出,同时发布状态变更通知,向平衡控制服务报告该业务服务已变更为停止状态。
基于上述精准营销系统的弹性计算结构,本发明实施例提供了一种消息队列的负载均衡控制系统,如图5所示,包括监控模块51和控制子系统52,监控模块51连接到各消息队列。其中:
监控模块51,用于轮询每一个消息队列的当前深度,当存在当前深度达到预设的队列深度告警阈值的过载消息队列时,生成告警信息发送给平衡控制模块,所述告警信息中包括各过载消息队列的标识信息及其当前深度;
为了便于区分,本发明实施例中将当前深度达到预设的队列深度告警阈值的消息队列称为“过载消息队列”;
控制子系统52,用于根据告警信息中各过载消息队列的当前深度、以及业务服务的平均处理能力,分别确定各过载消息队列需要增加的业务服务数量;选取相应数量且满足配置条件的业务服务,增加配置给告警信息中各过载消息队列的标识信息所指示的过载消息队列。
具体实施中,控制子系统52的一种可能实现方式,包括平衡控制模块521和服务管理器522,其中:
平衡控制模块521,用于查询每一个应用服务器的CPU利用率,确定CPU利用率低于设定的第一利用率阈值的空闲应用服务器;平衡控制模块向服务管理器发起启动业务服务的控制命令,其中指示空闲应用服务器并携带各过载消息队列的标识信息及其需要增加的业务服务数量;
服务管理器522,用于根据启动业务服务的控制命令,分别为每一个过载消息队列启动相应数量、且部署在空闲应用服务器中的业务服务。
较佳的,平衡控制模块521,还用于当某个过载消息队列的当前深度恢复到其队列深度告警阈值之下时,查询每一个应用服务器的CPU利用率;如果存在CPU利用率高于设定的第二利用率阈值的繁忙应用服务器,向服务管理器发起停止业务服务的控制命令,其中指示繁忙应用服务器并携带该过载消息队列的标识信息,所述第二利用率阈值高于第一利用率阈值;
服务管理器522,还用于根据停止业务服务的控制命令,停止为该过载消息队列配置的、且部署在繁忙应用服务器中的业务服务。
监控模块生成的告警信息中除了包括各过载消息队列的标识信息及其当前深度之外,还可以包括:其它消息队列的标识信息及其当前深度;在这种情况下,控制子系统的另一种可能实现方式,包括平衡控制模块521和服务管理器522,其中:
平衡控制模块521,用于为每一个过载消息队列增加配置相应数量、且当前深度低于设定的队列深度调度阈值的消息队列所对应的业务服务,所述队列深度调度阈值低于队列深度告警阈值;通过管理服务器522向所述业务服务发布包括消息队列连接信息的配置更新消息,消息队列连接信息用于指示业务服务连接到指定的过载消息队列。
基于同一技术构思,本发明实施例提供了一种消息队列的负载均衡控制方法,通过消息队列的当前深度体现数据处理压力,因此需要预先为每一个消息队列设置队列深度告警阈值,为各消息队列设置的队列深度告警阈值可以相同,也可以不相同,可以根据实际需求灵活设置。如图6所示,本发明实施例提供的消息队列的负载均衡控制方法,包括如下步骤:
S601、轮询每一个消息队列的当前深度,当存在当前深度达到预设的队列深度告警阈值的过载消息队列时,生成告警信息,所述告警信息中包括各过载消息队列的标识信息及其当前深度;
具体实施中,可以按照固定时间间隔(该固定时间间隔可以称为监控周期)轮询每一个消息队列的当前深度;也可以在满足设定的触发条件时,例如用户触发队列深度的查询,轮询每一个消息队列的当前深度。
S602、根据告警信息中各过载消息队列的当前深度、以及业务服务的平均处理能力,分别确定各过载消息队列需要增加的业务服务数量;
具体实施中,业务服务的平均处理能力可以通过如下方式确定并预先配置:
对提供业务服务的应用服务器进行POC(Proof of Concept)基准测试,得出典型业务场景下,应用服务器的POC基准值和业务服务最大数量,POC基准值是指应用服务器处理消息的性能值,单位一般为条数/分;业务服务最大数量是指最佳性能下应用服务器能够部署的业务服务的最大数量;需要说明的是,具体实施中,提供业务服务的各应用服务器性能基本一致。基于POC基准测试,可以得到业务服务的平均处理能力,具体计算方法如公式[1]所示:
业务服务的平均处理能力=POC基准值/业务服务最大数量      [1]
根据业务服务的平均处理能力,以及过载消息队列的当前深度(一般采用消息的条数表示),可以得到每一个过载消息队列需要增加的业务服务数量,假设过载消息队列的数量为N,则第i(1≤i≤N)个过载消息队列需要增加的业务服务数量,具体计算方法如公式[2]所示:
需要增加的业务服务数量=Pi/T    [2]
其中,Pi表示第i(1≤i≤N)个过载消息队列的当前深度,T表示业务服务的平均处理能力。
S603、选取相应数量且满足配置条件的业务服务,增加配置给告警信息中各过载消息队列的标识信息所指示的过载消息队列。
以下通过具体实施方式详细说明消息队列的负载均衡控制方案。
为了达到控制消息队列负载均衡的目的,可以由服务管理器接收平衡控制模块发起的启动业务服务的控制命令,从而确保精准营销系统在面对大数据量、以及非均衡的实时数据时,能够保持高实时性和高可靠性,假设监控模块按固定时间间隔轮询每一个消息队列的当前深度。如图7所示,包括如下步骤:
S701、在当前的监控周期到达时,监控模块轮询每一个消息队列的当前深度,并更新监控模块中存储的消息队列的当前深度;
S702、如果监控模块监控到某一个或多个消息队列的当前深度达到预设的队列深度告警阈值,该一个或多个消息队列称为过载消息队列,则执行S703;
如果监控模块没有监控到当前深度达到设定的队列深度告警阈值的消息队列,则不执行任何处理,等待下一监控周期的到来;
S703、监控模块生成告警信息发送给平衡控制模块,告警信息中需要包括各过载消息队列的标识信息及其当前深度;
举例进行说明:
表1
Figure BSA00000323643500091
假设监控模块连接了四个消息队列,编号分别为1、2、3、4,每一个消息队列的最大队列深度和队列深度告警阈值请参见表1。在当前的监控周期到达时,监控模块查询到每一个消息队列的当前深度如表1所示。基于上述查询结果,监控模块监控到消息队列1和消息队列2的当前深度达到预设的队列深度告警阈值,则生成告警信息发送给平衡控制模块,告警信息中需要包括过载消息队列的标识信息及其当前深度。其中过载消息队列的标识信息可以采用消息队列的编号、也可以采用消息队列的名称等,能够唯一标识一个消息队列即可,假设采用消息队列的编号,则告警信息中包括如下信息:(1、1000000);(2、1000000);
S704、平衡控制模块接收到告警信息后,根据各过载消息队列的当前深度、以及业务服务的平均处理能力,分别确定各过载消息队列需要增加的业务服务数量;
假设确定出消息队列1需要增加的业务服务数量为M1、消息队列2需要增加的业务服务数量为M2
S705、平衡控制模块查询每一个应用服务器的CPU利用率,获得CPU利用率低于设定的第一利用率阈值的空闲应用服务器,第一利用率阈值可以根据实际情况灵活设定,例如设定为10%、5%等等,一般情况下不超过50%;
S706、平衡控制模块向服务管理器发起启动业务服务的控制命令,其中指示空闲应用服务器并携带各过载消息队列的标识信息及其需要增加的业务服务数量;
S707、服务管理器根据业务服务的控制命令,在空闲应用服务器中分别为每一个过载消息队列启动相应数量的业务服务;需要说明的是,由于服务管理器统一管理部署在应用服务器中的业务服务,因此服务管理器能够获知各应用服务器的业务服务分布信息;
例如根据S704的计算结果,为消息队列1启动M1个业务服务,为消息队列2启动M2个业务服务。
S708、服务管理器向平衡控制模块反馈状态变更通知,报告相应的业务服务已变更为启动状态。
S704和S705是预设的负载均衡控制策略,根据查询到的CPU利用率,获得尽可能分散的空闲应用服务器,使得新开启的业务服务分散在各空闲应用服务器中,有利于提高带宽利用率。S706和S707是对负载均衡控制策略的执行部分,使得更多的应用服务器上的业务服务启动,连接到消息队列并行处理业务事件。
为了实现对各应用服务器的CPU利用率的查询,具体实施中,可以使用Linux脚本将监控信息写入文件,再由程序通过消息队列上传给平衡控制模块。
具体实施中,在过载消息队列的队列深度恢复正常之后,平衡控制模块还可以通过查询每一个应用服务器的CPU利用率,通知服务管理器停止相应的业务服务,具体包括如下步骤:
步骤1、当某个过载消息队列的当前深度恢复到其队列深度告警阈值之下时,平衡控制模块查询每一个应用服务器的CPU利用率;
步骤2、如果存在CPU利用率高于设定的第二利用率阈值的繁忙应用服务器,平衡控制模块向服务管理器发起停止业务服务的控制命令,其中指示繁忙应用服务器并携带该过载消息队列的标识信息,所述第二利用率阈值高于第一利用率阈值;
步骤3、服务管理器根据停止业务服务的控制命令,停止为该过载消息队列配置的、且部署在繁忙应用服务器中的业务服务。
为了达到控制消息队列负载均衡的目的,可以由服务管理器接收平衡控制模块发起的包括消息队列连接信息的配置更新消息,更新为过载消息队列服务的业务服务,从而确保精准营销系统在面对大数据量、以及非均衡的实时数据时,能够保持高实时性和高可靠性,假设监控模块按固定时间间隔轮询每一个消息队列的当前深度。如图8所示,包括如下步骤:
S801、在当前的监控周期到达时,监控模块轮询每一个消息队列的当前深度,并更新监控模块中存储的消息队列的当前深度;
S802、如果监控模块监控到某一个或多个消息队列的当前深度达到预设的队列深度告警阈值,该一个或多个消息队列称为过载消息队列,则执行S803;
如果监控模块没有监控到当前深度达到设定的队列深度告警阈值的消息队列,则不执行任何处理,等待下一监控周期的到来;
S803、监控模块生成告警信息发送给平衡控制模块,告警信息中除了包括各过载消息队列的标识信息及其当前深度之外,还包括其它消息队列的标识信息及其当前深度;
S804、平衡控制模块接收到告警信息后,根据各过载消息队列的当前深度、以及业务服务的平均处理能力,分别确定各过载消息队列需要增加的业务服务数量;
S805、平衡控制模块为每一个过载消息队列增加配置相应数量的当前深度低于设定的队列深度调度阈值的消息队列所对应的业务服务,其中,队列深度调度阈值小于队列深度告警阈值;
S806、平衡控制模块通过管理服务器向上述每一个业务服务发布包括消息队列连接信息的配置更新消息;
S807、相应的业务服务根据配置更新消息中的消息队列连接信息连接到指定的过载消息队列。
本发明实施例提供的消息队列的负载均衡控制方法及系统,摒弃了由主队列控制负载均衡的模式,通过轮询每一个消息队列的当前深度,当某一个或多个消息队列的队列深度达到设定的队列深度告警阈值时,确定各过载消息队列需要增加的业务服务数量,并将满足配置条件的业务服务增加配置给各过载消息队列,从而达到了控制消息队列负载均衡的目的,提升了灵活性;业务服务不再从固定的消息队列中提取消息进行业务处理,而是可以根据实际情况灵活为消息队列配置业务服务,实现了客户端对消息队列的灵活切换。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种消息队列的负载均衡控制方法,其特征在于,包括:
轮询每一个消息队列的当前深度,当存在当前深度达到预设的队列深度告警阈值的过载消息队列时,生成告警信息,所述告警信息中包括各过载消息队列的标识信息及其当前深度;
根据告警信息中各过载消息队列的当前深度、以及业务服务的平均处理能力,分别确定各过载消息队列需要增加的业务服务数量;
选取相应数量且满足配置条件的业务服务,增加配置给告警信息中各过载消息队列的标识信息所指示的过载消息队列。
2.如权利要求1所述的方法,其特征在于,所述选取相应数量且满足配置条件的业务服务,增加配置给告警信息中各过载消息队列的标识信息所指示的过载消息队列,具体包括:
查询每一个应用服务器的CPU利用率,确定CPU利用率低于设定的第一利用率阈值的空闲应用服务器,所述应用服务器中部署业务服务;
为每一个过载消息队列启动相应数量、且部署在空闲应用服务器中的业务服务。
3.如权利要求2所述的方法,其特征在于,还包括:
当某个过载消息队列的当前深度恢复到其队列深度告警阈值之下时,查询每一个应用服务器的CPU利用率;
如果存在CPU利用率高于设定的第二利用率阈值的繁忙应用服务器,则停止为该过载消息队列配置的、且部署在繁忙应用服务器中的业务服务,所述第二利用率阈值高于第一利用率阈值。
4.如权利要求1所述的方法,其特征在于,所述告警信息中还包括:其它消息队列的标识信息及其当前深度;以及
所述选取相应数量且满足配置条件的业务服务,增加配置给告警信息中各过载消息队列的标识信息所指示的过载消息队列,具体包括:
为每一个过载消息队列增加配置相应数量、且当前深度低于设定的队列深度调度阈值的消息队列所对应的业务服务,所述队列深度调度阈值低于队列深度告警阈值;
向所述业务服务发布包括消息队列连接信息的配置更新消息;以及
所述业务服务根据配置更新消息中的消息队列连接信息连接到指定的过载消息队列。
5.如权利要求1所述的方法,其特征在于,过载消息队列需要增加的业务服务数量为该过载消息队列的当前深度与业务服务的平均处理能力之商。
6.如权利要求1所述的方法,其特征在于,按照固定的时间间隔轮询每一个消息队列的当前深度。
7.一种消息队列的负载均衡控制系统,其特征在于,包括:
监控模块,用于轮询每一个消息队列的当前深度,当存在当前深度达到预设的队列深度告警阈值的过载消息队列时,生成告警信息发送给平衡控制模块,所述告警信息中包括各过载消息队列的标识信息及其当前深度;
控制子系统,用于根据告警信息中各过载消息队列的当前深度、以及业务服务的平均处理能力,分别确定各过载消息队列需要增加的业务服务数量;选取相应数量且满足配置条件的业务服务,增加配置给告警信息中各过载消息队列的标识信息所指示的过载消息队列。
8.如权利要求7所述的系统,其特征在于,所述控制子系统包括平衡控制模块和服务管理器,其中:
所述平衡控制模块,用于查询每一个应用服务器的CPU利用率,确定CPU利用率低于设定的第一利用率阈值的空闲应用服务器,所述应用服务器中部署业务服务;向所述服务管理器发起启动业务服务的控制命令,其中指示空闲应用服务器并携带各过载消息队列的标识信息及其需要增加的业务服务数量;
所述服务管理器,用于根据启动业务服务的控制命令,分别为每一个过载消息队列启动相应数量、且部署在空闲应用服务器中的业务服务。
9.如权利要求8所述的系统,其特征在于,
所述平衡控制模块,还用于当某个过载消息队列的当前深度恢复到其队列深度告警阈值之下时,查询每一个应用服务器的CPU利用率;如果存在CPU利用率高于设定的第二利用率阈值的繁忙应用服务器,向服务管理器发起停止业务服务的控制命令,其中指示繁忙应用服务器并携带该过载消息队列的标识信息,所述第二利用率阈值高于第一利用率阈值;
服务管理器,还用于根据停止业务服务的控制命令,停止为该过载消息队列配置的、且部署在繁忙应用服务器中的业务服务。
10.如权利要求7所述的系统,其特征在于,
所述监控模块生成的告警信息中还包括:其它消息队列的标识信息及其当前深度;以及
所述控制子系统包括平衡控制模块和服务管理器,其中:
平衡控制模块,用于为每一个过载消息队列增加配置相应数量、且当前深度低于设定的队列深度调度阈值的消息队列所对应的业务服务,所述队列深度调度阈值低于队列深度告警阈值;通过所述管理服务器向所述业务服务发布包括消息队列连接信息的配置更新消息,消息队列连接信息用于指示业务服务连接到指定的过载消息队列。
CN201010523391.7A 2010-10-26 2010-10-26 一种消息队列的负载均衡控制方法及系统 Active CN102457906B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010523391.7A CN102457906B (zh) 2010-10-26 2010-10-26 一种消息队列的负载均衡控制方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010523391.7A CN102457906B (zh) 2010-10-26 2010-10-26 一种消息队列的负载均衡控制方法及系统

Publications (2)

Publication Number Publication Date
CN102457906A true CN102457906A (zh) 2012-05-16
CN102457906B CN102457906B (zh) 2014-01-08

Family

ID=46040428

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010523391.7A Active CN102457906B (zh) 2010-10-26 2010-10-26 一种消息队列的负载均衡控制方法及系统

Country Status (1)

Country Link
CN (1) CN102457906B (zh)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103927218A (zh) * 2014-04-30 2014-07-16 广州唯品会网络技术有限公司 事件分发方法及系统
CN104539661A (zh) * 2014-12-11 2015-04-22 曙光信息产业(北京)有限公司 消息队列处理方法和装置
CN105306552A (zh) * 2015-09-30 2016-02-03 中国科学院计算技术研究所 一种基于消息队列的消费均衡方法及系统
CN105721553A (zh) * 2016-01-25 2016-06-29 中国联合网络通信有限公司广东省分公司 一种自适应集群消息分发器
CN106878197A (zh) * 2017-02-22 2017-06-20 郑州云海信息技术有限公司 一种云平台消息传输的管理系统及方法
CN106886457A (zh) * 2015-12-16 2017-06-23 泰康保险集团股份有限公司 消息队列处理方法及装置
CN107592364A (zh) * 2017-09-22 2018-01-16 中汇信息技术(上海)有限公司 一种分布式消息交换方法和系统
CN108134830A (zh) * 2017-12-20 2018-06-08 马上消费金融股份有限公司 基于消息队列的负载均衡方法、系统、装置及存储介质
CN108848039A (zh) * 2018-04-24 2018-11-20 平安科技(深圳)有限公司 服务器、消息分配的方法及存储介质
CN109145593A (zh) * 2018-07-04 2019-01-04 杭州涂鸦信息技术有限公司 一种物联网过滤非法数据的方法、装置及计算机设备
CN109976977A (zh) * 2019-03-28 2019-07-05 努比亚技术有限公司 应用服务负载减压方法、服务器以及存储介质
CN110149392A (zh) * 2019-05-17 2019-08-20 优信拍(北京)信息科技有限公司 一种推送消息的管理方法及装置
CN110290217A (zh) * 2019-07-01 2019-09-27 腾讯科技(深圳)有限公司 数据请求的处理方法及装置、存储介质及电子装置
CN111078389A (zh) * 2018-10-18 2020-04-28 杭州海康威视数字技术股份有限公司 一种垃圾数据清理方法、装置、电子设备及可读存储介质
CN111541619A (zh) * 2020-04-30 2020-08-14 中国人民银行清算总中心 企业信息联网核查系统的自适应主动负载调节方法和装置
CN111782488A (zh) * 2020-07-10 2020-10-16 中国工商银行股份有限公司 消息队列监控方法、装置、电子设备和介质
CN112612607A (zh) * 2020-12-16 2021-04-06 平安消费金融有限公司 基于消息队列的数据处理方法、装置、计算机设备和介质
CN113835905A (zh) * 2021-09-28 2021-12-24 北京奇艺世纪科技有限公司 一种消息队列负载均衡方法、装置、电子设备及介质
CN115484211A (zh) * 2022-09-14 2022-12-16 中国银行股份有限公司 大小额支付系统的双活处理方法和系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101014002A (zh) * 2006-12-12 2007-08-08 华为技术有限公司 集群消息传送方法及分布式集群系统
CN101753444A (zh) * 2009-12-31 2010-06-23 卓望数码技术(深圳)有限公司 一种负载均衡方法和负载均衡装置
US20100229182A1 (en) * 2009-03-05 2010-09-09 Fujitsu Limited Log information issuing device, log information issuing method, and program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101014002A (zh) * 2006-12-12 2007-08-08 华为技术有限公司 集群消息传送方法及分布式集群系统
US20100229182A1 (en) * 2009-03-05 2010-09-09 Fujitsu Limited Log information issuing device, log information issuing method, and program
CN101753444A (zh) * 2009-12-31 2010-06-23 卓望数码技术(深圳)有限公司 一种负载均衡方法和负载均衡装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
嵇智辉,倪宏,刘磊: "动态消息队列负载均衡策略的研究与应用", 《计算机工程》, vol. 35, no. 8, 30 April 2009 (2009-04-30) *

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103927218B (zh) * 2014-04-30 2017-07-04 广州唯品会网络技术有限公司 事件分发方法及系统
CN103927218A (zh) * 2014-04-30 2014-07-16 广州唯品会网络技术有限公司 事件分发方法及系统
CN104539661A (zh) * 2014-12-11 2015-04-22 曙光信息产业(北京)有限公司 消息队列处理方法和装置
CN105306552A (zh) * 2015-09-30 2016-02-03 中国科学院计算技术研究所 一种基于消息队列的消费均衡方法及系统
CN106886457A (zh) * 2015-12-16 2017-06-23 泰康保险集团股份有限公司 消息队列处理方法及装置
CN106886457B (zh) * 2015-12-16 2020-09-04 泰康保险集团股份有限公司 消息队列处理方法及装置
CN105721553A (zh) * 2016-01-25 2016-06-29 中国联合网络通信有限公司广东省分公司 一种自适应集群消息分发器
CN105721553B (zh) * 2016-01-25 2019-06-25 中国联合网络通信有限公司广东省分公司 一种自适应集群消息分发器
CN106878197A (zh) * 2017-02-22 2017-06-20 郑州云海信息技术有限公司 一种云平台消息传输的管理系统及方法
CN107592364B (zh) * 2017-09-22 2020-08-11 中汇信息技术(上海)有限公司 一种分布式消息交换方法和系统
CN107592364A (zh) * 2017-09-22 2018-01-16 中汇信息技术(上海)有限公司 一种分布式消息交换方法和系统
CN108134830A (zh) * 2017-12-20 2018-06-08 马上消费金融股份有限公司 基于消息队列的负载均衡方法、系统、装置及存储介质
CN108848039B (zh) * 2018-04-24 2021-11-02 平安科技(深圳)有限公司 服务器、消息分配的方法及存储介质
CN108848039A (zh) * 2018-04-24 2018-11-20 平安科技(深圳)有限公司 服务器、消息分配的方法及存储介质
CN109145593A (zh) * 2018-07-04 2019-01-04 杭州涂鸦信息技术有限公司 一种物联网过滤非法数据的方法、装置及计算机设备
CN111078389A (zh) * 2018-10-18 2020-04-28 杭州海康威视数字技术股份有限公司 一种垃圾数据清理方法、装置、电子设备及可读存储介质
CN111078389B (zh) * 2018-10-18 2023-09-05 杭州海康威视数字技术股份有限公司 一种垃圾数据清理方法、装置、电子设备及可读存储介质
CN109976977A (zh) * 2019-03-28 2019-07-05 努比亚技术有限公司 应用服务负载减压方法、服务器以及存储介质
CN110149392A (zh) * 2019-05-17 2019-08-20 优信拍(北京)信息科技有限公司 一种推送消息的管理方法及装置
CN110290217A (zh) * 2019-07-01 2019-09-27 腾讯科技(深圳)有限公司 数据请求的处理方法及装置、存储介质及电子装置
CN110290217B (zh) * 2019-07-01 2022-04-26 腾讯科技(深圳)有限公司 数据请求的处理方法及装置、存储介质及电子装置
CN111541619A (zh) * 2020-04-30 2020-08-14 中国人民银行清算总中心 企业信息联网核查系统的自适应主动负载调节方法和装置
CN111541619B (zh) * 2020-04-30 2023-05-05 中国人民银行清算总中心 企业信息联网核查系统的自适应主动负载调节方法和装置
CN111782488A (zh) * 2020-07-10 2020-10-16 中国工商银行股份有限公司 消息队列监控方法、装置、电子设备和介质
CN111782488B (zh) * 2020-07-10 2024-02-02 中国工商银行股份有限公司 消息队列监控方法、装置、电子设备和介质
CN112612607A (zh) * 2020-12-16 2021-04-06 平安消费金融有限公司 基于消息队列的数据处理方法、装置、计算机设备和介质
CN113835905A (zh) * 2021-09-28 2021-12-24 北京奇艺世纪科技有限公司 一种消息队列负载均衡方法、装置、电子设备及介质
CN113835905B (zh) * 2021-09-28 2023-09-05 北京奇艺世纪科技有限公司 一种消息队列负载均衡方法、装置、电子设备及介质
CN115484211A (zh) * 2022-09-14 2022-12-16 中国银行股份有限公司 大小额支付系统的双活处理方法和系统

Also Published As

Publication number Publication date
CN102457906B (zh) 2014-01-08

Similar Documents

Publication Publication Date Title
CN102457906B (zh) 一种消息队列的负载均衡控制方法及系统
US10887247B2 (en) Dynamic resource allocation for sensor devices on a cellular network
CN102377685B (zh) 一种订阅消息的发送系统以及订阅消息的发送方法
CN111131401B (zh) 一种服务请求的响应方法及系统
CN102984012B (zh) 管理服务资源的方法及服务资源管理系统
CN104731663A (zh) 任务处理方法及系统
CN101909048A (zh) 一种集中式转码处理方法和装置
US20160344582A1 (en) Call home cluster
CN109766172B (zh) 一种异步任务调度方法以及装置
CN109802986B (zh) 设备管理方法、系统、装置及服务器
CN102724132B (zh) 一种提高tcp连接复用处理效率的方法及装置
CN102521057A (zh) 资源调度方法和装置
CN105592127A (zh) 用于云计算环境的应用管理系统
CN103150241A (zh) 多服务器状态监控管理系统和方法
CN102902594A (zh) 资源管理系统和资源管理方法
CN104750544A (zh) 应用于分布式系统中的进程管理系统及进程管理方法
CN112448987A (zh) 一种熔断降级的触发方法、系统和存储介质
CN111459681B (zh) 一种基于微服务负载的动态弹性伸缩方法
CN110290009B (zh) 一种数据调度方法、装置及计算机可读存储介质
CN109388501B (zh) 基于人脸识别请求的通信匹配方法、装置、设备及介质
CN105338008A (zh) 一种用于物联网的设备调度方法、设备与系统
CN102571595A (zh) 一种堆叠系统的路由转发信息同步方法和装置
CN1979423A (zh) 多处理器负载分配调整方法
KR101272077B1 (ko) 망 부하 감소를 위한 푸시 서비스 제공 시스템 및 방법
CN112231123A (zh) 消息处理方法、装置、存储介质及电子装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant