CN107040558A - 一种任务监控方法及装置 - Google Patents

一种任务监控方法及装置 Download PDF

Info

Publication number
CN107040558A
CN107040558A CN201610078167.9A CN201610078167A CN107040558A CN 107040558 A CN107040558 A CN 107040558A CN 201610078167 A CN201610078167 A CN 201610078167A CN 107040558 A CN107040558 A CN 107040558A
Authority
CN
China
Prior art keywords
count number
server
apps server
task
counting
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
CN201610078167.9A
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201610078167.9A priority Critical patent/CN107040558A/zh
Publication of CN107040558A publication Critical patent/CN107040558A/zh
Pending legal-status Critical Current

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请实施例公开了一种任务监控方法及装置,所述方法包括:应用程序服务器向缓存服务器发送批量计数请求,接收缓存服务器分配的计数量;所述计数量是缓存服务器为应用程序服务器分配的、用于统计任务个数的门限值;应用程序服务器根据所述计数量,通过计数方式在本地进行任务监控。通过本申请,应用程序服务器通过申请计数量的方式,来分担缓存服务器的计数任务,减小与缓存服务器的交互次数,从而减小对缓存服务器的访问压力,从而提高整个监控***的监控性能,能够很好地适应于大集群、高并发的业务场景。

Description

一种任务监控方法及装置
技术领域
本申请涉及互联网技术领域,特别是涉及一种任务监控方法和装置。
背景技术
在互联网应用中有许多业务场景,利用任务计数方式来监控任务,根据任务个数是否超过阈值,来决定进行不同的处理;例如,如果任务计数未超过预设阈值,则正常处理任务,如果任务计数超过预设阈值,则停止处理任务。例如:一些高风险的行业,如第三方支付,其为了对风险进行有效控制和管理,则利用风险控制平台对业务的实时跟踪和处理的方法实现欺诈风险预警的自动化。在风险控制平台中,针对每个风险控制规则都会设置一个阈值,若风险控制规则的命中次数超过预设阈值,就停止业务处理。
目前,在互联网应用中,针对上述特定业务场景,常采用如图1所示的技术方案进行任务监控,如图1所示,分布式集群中每台应用程序服务器(AppServer)在有任务发起时,就先向缓存服务器(Cache Server)发起请求,由Cache Server执行任务计数,Cache Server控制针对该任务的计数器就执行加一操作,计数完成后,Cache Server再向App Server返回当前计数器的数值,由App Server判断当前计数器的数值是否超过预设阀值,根据判断结果再决定后续的处理方式。
现有的技术方案存在的问题是,Cache Server的访问量是单台App Server访问量与集群Server总数的乘积,其访问压力非常大,尤其是在大集群、高并发的场景下,高并发的访问量很容易导致Cache Server瘫痪,从而导致整个任务监控***瘫痪,因此,Cache Server的访问性能成了整个任务监控***的发展瓶颈。
发明内容
为了解决上述技术问题,本申请提供了任务监控方法,能够在保证人为监控准确的情况下,缓解缓存服务器的访问压力,从而提高整个监控***的监控性能,能够很好地适应于大集群、高并发的业务场景。
本申请还提供了任务监控装置,该装置用于保证上述方法在实际中的实现及应用。
在本申请第一方面提供了一种任务监控方法,所述方法包括:
应用程序服务器向缓存服务器发送批量计数请求,接收缓存服务器分配的计数量;所述计数量是缓存服务器为应用程序服务器分配的、用于统计任务个数的门限值;
应用程序服务器根据所述计数量,通过计数方式在本地进行任务监控。
可选的,所述应用程序服务器向缓存服务器发送批量计数请求,接收缓存服务器分配的计数量,包括:
所述应用程序服务器向缓存服务器发送携带有应用程序服务器可承载的计数量的批量计数请求;
所述应用程序服务器接收缓存服务器根据所述可承载的计数量向其分配的计数量。
可选的,所述应用程序服务器通过以下方式计算应用程序服务器可承载的计数量:
应用程序服务器根据预设阈值和***内应用程序服务器总个数,计算平均计数量;应用程序服务器从所述平均计数量和***默认分配值中选择最小值,将所述最小值作为应用程序服务器可承载的计数量。
可选的,所述应用程序服务器根据所述计数量,通过计数方式在本地进行任务监控,包括:
应用程序服务器接收到任务时,判断本地当前已统计的任务量是否小于所述计数量;如果是,应用程序服务器针对接收到的任务,进行任务计数;
如果否,应用程序服务器再次向缓存服务器发送批量计数请求。
可选的,所述应用程序服务器根据所述计数量,通过计数方式在本地进行任务监控,包括:
应用程序服务器根据所述计数量和缓存服务器反馈的已分配的计数总量,计算应用程序服务器有效计数量;
当接收到任务时,应用程序服务器判断有效计数量是否大于零;如果是,则应用程序服务器针对接收到的任务进行任务计数,并更新有效计数量;如果否,应用程序服务器再次向缓存服务器发送批量计数请求。
可选的,所述应用程序服务器根据所述计数量和缓存服务器反馈的已分配的计数总量,计算应用程序服务器有效计数量,包括:
应用程序服务器判断所述计数总量是否小于预设阈值;
如果是,应用程序服务器确定有效计数量为所述计数量;
如果否,应用程序服务器按照如下公式计算有效计数量:
所述有效计数量=所述计数量-(所述计数总量-所述预设阈值)。
可选的,在所述应用程序服务器再次向缓存服务器发送批量计数请求之前,所述方法还包括:
应用程序服务器判断缓存服务器已分配的计数总量是否超过预设阈值;如果是,结束任务计数;如果否,则应用程序服务器再次向缓存服务器发送批量计数请求。
可选的,所述应用程序服务器针对接收到的任务,进行任务计数,包括:
应用程序服务器控制任务计数器从零开始,按照逐次增一的方式针对接收到的任务进行任务计数;或,
应用程序服务器控制任务计数器从所述计数量开始,按照逐次减一的方式,针对接收到的任务进行任务计数。
可选的,所述方法还包括:
应用程序服务器在***关闭或重启时,将保存的有效计数量反馈给缓存服务器;所述有效计数量是指应用程序服务器可用的计数量。
在本申请第二方面提供了一种任务监控方法,所述方法包括:
缓存服务器接收应用程序服务器发送的批量计数请求;
缓存服务器向应用程序服务器分配计数量,所述计数量是用于统计任务个数的门限值;以使所述应用程序服务器根据接收到的计数量,通过计数方式进行任务监控。
可选的,所述方法还包括:缓存服务器分配计数量时,还向应用程序服务器反馈当前已分配的技术总量,以使应用程序服务器根据所述计数量和计数总量计算有效计数量,并根据有效计数量进行任务监控。
可选的,所述缓存服务器向应用程序服务器分配计数量,包括:
缓存服务器根据预设阈值和***内应用程序服务器总个数,计算平均计数量,按照所述平均计数量向应用程序服务器分配计数量;或者,
缓存服务器根据所述批量计数请求包含的应用程序服务器可承载的计数量,向应用程序服务器分配计数量。
可选的,所述缓存服务器根据所述批量计数请求包含的应用程序服务器可承载的计数量,向应用程序服务器分配计数量,包括:
缓存服务器计算预设阈值与已分配的计数总量的差值,所述差值为可分配的计数量;
当可分配的计数量小于所述应用程序服务器可承载的计数量时,缓存服务器向应用程序服务器分配的计数量为所述可分配的计数量;
当可分配的计数量不小于所述应用程序服务器可承载的计数量时,缓存服务器向应用程序服务器分配的计数量为所述应用程序服务器可承载的计数量。
在本申请第三方面提供了一种任务监控装置,所述装置包括:
发送及接收单元,用于向缓存服务器发送批量计数请求,接收缓存服务器分配的计数量;所述计数量是缓存服务器为应用程序服务器分配的、用于统计任务个数的门限值;
任务监控单元,用于根据所述计数量,通过计数方式在本地进行任务监控。
可选的,所述发送及接收单元,包括:
发送子单元,用于向缓存服务器发送携带有应用程序服务器可承载的计数量的批量计数请求;
接收子单元,用于接收缓存服务器根据所述可承载的计数量向应用程序服务器分配的计数量。
可选的,所述装置还包括:
计算单元,用于根据预设阈值和***内应用程序服务器总个数,计算平均计数量;
选择单元,用于从所述平均计数量和***默认分配值中选择最小值,将所述最小值作为应用程序服务器可承载的计数量。
可选的,所述任务监控单元,包括:
第一判断子单元,用于在接收到任务时,判断本地当前已统计的任务量是否小于所述计数量;如果是,执行任务计数子单元;所述任务计数子单元,用于针对接收到的任务进行任务计数;
如果否,执行所述发送及接收单元,以再次向缓存服务器发送批量计数请求。
可选的,所述任务监控单元,包括:
有效计数量计算子单元,用于根据所述计数量和缓存服务器反馈的已分配的计数总量,计算应用程序服务器有效计数量;
第二判断子单元,用于当接收到任务时,应用程序服务器判断有效计数量是否大于零;如果是,执行任务计数子单元和有效计数量更新子单元;所述任务计数子单元,用于针对接收到的任务进行任务计数;所述更新子单元,用于在任务计数子单元执行任务计数后,更新有效计数量;如果否,执行所述发送及接收单元,以再次向缓存服务器发送批量计数请求。
可选的,所述有效计数量计算子单元,包括:
判断子单元,用于判断所述计数总量是否小于预设阈值;如果是,执行确定模块,如果否,执行计算模块;
确定子单元,用于确定有效计数量为所述计数量;
计算子单元,用于按照如下公式计算有效计数量:
所述有效计数量=所述计数量-(所述计数总量-所述预设阈值)。
可选的,所述装置还包括:
当所述第一判断单元或所述第二判断单元判断为否时,触发所述第三判断单元,所述第三判断子单元,用于判断缓存服务器已分配的计数总量是否超过预设阈值;如果是,执行结束子单元,所述结束子单元,用于结束任务计数;如果否,执行所述发送及接收单元,以再次向缓存服务器发送批量计数请求。
可选的,其特征在于,所述任务计数子单元,包括:
第一计数子单元,用于控制任务计数器从零开始,按照逐次增一的方式针对接收到的任务进行任务计数;或,
第二计数子单元,用于控制任务计数器从所述计数量开始,按照逐次减一的方式,针对接收到的任务进行任务计数。
可选的,所述装置还包括:
反馈单元,用于在应用程序服务器***关闭或重启时,将保存的有效计数量反馈给缓存服务器;所述有效计数量是指应用程序服务器可用的计数量。
在本申请方面提供了一种任务监控装置,所述装置包括:
接收单元,用于接收应用程序服务器发送的批量计数请求;
分配单元,用于向应用程序服务器分配计数量,所述计数量是用于统计任务个数的门限值;以使所述应用程序服务器根据接收到的计数量,通过计数方式进行任务监控。
可选的,所述装置还包括:
反馈单元,用于在分配计数量时,向应用程序服务器反馈当前已分配的计数总量,以使应用程序服务器根据所述计数量和计数总量计算有效计数量,并根据有效计数量进行任务监控。
可选的,所述分配单元,包括:
第一分配子单元,用于根据预设阈值和***内应用程序服务器总个数,计算平均计数量,按照所述平均计数量向应用程序服务器分配计数量;或者,
第二分配子单元,用于根据所述批量计数请求包含的应用程序服务器可承载的计数量,向应用程序服务器分配计数量。
可选的,所述第二分配子单元,包括:
计算子单元,用于计算预设阈值与已分配的计数总量的差值,所述差值为可分配的计数量;
分配子单元,用于当可分配的计数量小于所述应用程序服务器可承载的计数量时,向应用程序服务器分配的计数量为所述可分配的计数量;或者,用于当可分配的计数量不小于所述应用程序服务器可承载的计数量时,向应用程序服务器分配的计数量为所述应用程序服务器可承载的计数量。
由上述实施例可以看出,与现有技术相比,本申请的优点在于:
利用本申请的技术方案实现任务监控,主要是利用应用程序服务器向缓存服务器发送批量计数请求,接收缓存服务器分配的计数量;所述计数量是缓存服务器为应用程序服务器分配的、用于统计任务个数的门限值;应用程序服务器根据所述计数量,通过计数方式在本地进行任务监控。可以理解为,应用程序服务器向缓存服务器申请计数量,然后根据申请到的计数量在本地独立完成任务监控,即,当有任务时,应用程序服务器并非直接请求缓存服务器执行计数,而是在本地执行计数。可见:应用程序服务器无需在每次接收到的任务时,就直接访问缓存服务器,而仅需要与缓存服务器进行一次或几次交互,得到缓存服务器分配的计数量,基于分配的计数量在本地独立完成任务监控,这样就能够分担缓存服务器的任务计数压力,大大减小对缓存服务器的访问量,能够很好地适用于高并发的业务场景,从而提高整个***的性能。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术的任务监控方法的应用示意图;
图2为本申请提供的一种任务监控方法实施例1的流程图;
图3为本申请提供的一种任务监控方法实施例2的流程图;
图4为本申请提供的一种任务监控方法实施例3的流程图;
图5为本申请提供的一种任务监控装置实施例1的结构图;
图6为本申请提供的一种任务监控装置实施例2的结构图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请实施例进行详细描述。
方法实施例
请参阅图2,图2为本申请提供的一种任务监控方法实施例1的流程图,该方法可以由应用程序服务器(App Server)执行,该方法可以包括:步骤101和步骤102:
步骤101:应用程序服务器向缓存服务器发送批量计数请求,接收缓存服务器分配的计数量;所述计数量是缓存服务器为应用程序服务器分配的、用于统计任务个数的门限值。
本申请实施例可以应用于在根据任务计数的机制来实现任务监管的场景中,应用程序服务器接收到任务时,需要通过计数机制来决定对对该任务如何进行处理,例如,当任务总数没有超过预设阈值时,则对任务进行正常处理;当任务总数超过预设阈值时,则停止对任务处理。
本申请实施例在实现时,应用程序服务器可以在任务监控开始之前,执行步骤101;也可以在接收到第一个任务时再执行步骤101。
步骤101在实现时,可以有以下两种实现方式:
步骤101的第一种实现方式是,应用程序服务器向缓存服务器发送携带有待监控的任务类型的批量计数请求;而缓存服务器接收到该请求之后,根据该任务类型对应的预设阈值和***内应用程序服务器总个数,计算平均计数量,按照所述平均计数量向应用程序服务器分配计数量;应用程序服务器接收缓存服务器分配的计数量。
举例说明:***内共包含10个应用程序服务器(App Server1-20),且在***内针对不同类型的任务设置有对应的阈值,即,预设阈值;假设AppServer1先向缓存服务器(Cache Server)发送携带类型A的批量计数请求,则Cache Server查找类型A的预设阈值为10000,则Cache Server按照如下公式计算平均计数量:
计算平均计数量=类型A任务对应的预设阈值/***内应用程序服务器总个数=10000/20=500。
Cache Server计算出平均计数量,然后向App Server1分配计数量为500。
在第一种实现方式中,主要是由Cache Server根据***的具体情况独立决定计数量的分配情况,以实现计数量的合理分配。
步骤101的第二种实现方式是,应用程序服务器向缓存服务器发送携带有应用程序服务器可承载的计数量的批量计数请求;所述应用程序服务器接收缓存服务器根据所述可承载的计数量向其分配的计数量。
其中,应用程序服务器可承载的计数量可以由用户预先设置;也可以通过以下方式计算得到,该方式包括:S11和S12。
S11:应用程序服务器根据预设阈值和***内应用程序服务器总个数,计算平均计数量;具体的,平均计数量=预设阈值/***内应用程序服务器总个数。
S12:应用程序服务器从所述平均计数量和***默认分配值中选择最小值,将所述最小值作为应用程序服务器可承载的计数量。
举例说明:仍旧以上述场景为例,App Server1负责对类型A的任务监控,类型A的任务对应的预设阈值为10000,***内App Server总个数为20;App Server1的***默认分配值b,例如:b=100。
App Server1先计算平均计数量,平均计数量等于预设阈值与***内AppServer总个数的比值,该平均计数量记作a;a=预设阈值/集群***内AppServer总个数,即,a=10000/20=500;b=100。App Server1再从a和b中选择最小值作为应用程序服务器可承载的计数量a l locateNum,则选择b=100为App Server1可承载的计数量。
这里需要说明的是,在实际应用中,不同的App Server的***默认分配值可能相同,也可能不相同,本申请对此不作限定。
在第二种实现方式中,应用程序服务器先计算出自己可承载的计数量,然后直接向缓存服务器请求这么多的计数量,这种方式使得缓存服务器能够根据应用程序服务器自身的处理性能实现计数量分配,能够限制分配粒度过大,保证合理分配,以保证***内各个应用程序服务器有效地发挥其作用。
步骤102:应用程序服务器根据所述计数量,通过计数方式在本地进行任务监控。
步骤102在实现时,可以有以下四种实现方式:
步骤102的第一种实现方式,包括:S21-S23:
S21:应用程序服务器接收到任务时,判断本地当前已统计的任务量是否小于所述计数量;如果是,执行S22,如果否,执行S23;
S22:应用程序服务器针对接收到的任务进行任务计数;
S23:应用程序服务器再次向缓存服务器发送批量计数请求。S23即,返回执行步骤101。
为了进一步减小对缓存服务器的访问压力,步骤102还可以采用第二种实现方式,第二种实现方式是在上述第一实现方式的基础上增加S24和S25:
具体是在,S21判断为否时,先执行S24。
S24:应用程序服务器判断缓存服务器已分配的计数总量是否超过预设阈值;如果是,执行S25,如果否,执行S23;
S25:结束任务计数。
采用第二种实现方式,应用程序服务器在本地先进行判断,然后再根据判断结果决定是否再访问缓存服务器以请求新一批的计数量,这样就能够根据实际情况来决定是否访问缓存服务器,能够进一步的减小对缓存服务器的访问压力。
其中,S21中描述的“当前已统计的任务量”是指应用程序服务器在接收到缓存服务器分配的计数量后,统计到的任务量。可以理解为,应用程序服务器每次向缓存服务器发送请求并接收到计数量,表示新一批的任务计数启动了,因此,应用程序服务器在每次接收到计数量之后,就重新开始统计任务量。
其中,在实现S23时,应用程序服务器可以根据缓存服务器在分配计数量时反馈的已分配的计数总量来进行判断,也可以实时查询缓存服务器已分配的计数总量来进行判断。
在步骤102的上述两种实现方式中,缓存服务器根据实际情况为应用程序服务器分配计数量,即,缓存服务器为应用程序服务器分配的计数量就是有效计数量;这样,应用程序服务器接收到计数量之后,就可以直接根据该计数量进行任务计数。下面对缓存服务器合理分配计数量进行举例说明:
举例说明:预设阈值为10000,若已分配的计数总量为9900;若应用程序服务器当前请求的计数量为100,则缓存服务器直接向其分配计数量为100。
预设阈值为10000,若已分配的计数总量为9900;若应用程序服务器当前请求的计数量为200,缓存服务器也只能向其分配计数量为100。
预设阈值为10000,若已分配的计数总量为10000,即,已完全分配。此时,应用程序服务器当前请求的计数量为100,则缓存服务器直接向其分配计数量为0;可以看出,由缓存服务器采用这种自控分配机制,对于应用程序服务器而言,其接收到的计数量就是有效计数量,这样,应用程序服务器就根据接收到的计数量来完成任务监控。
步骤102的第三种实现方式,包括:S31-S37:
S31:应用程序服务器根据所述计数量和缓存服务器反馈的已分配的计数总量,计算应用程序服务器有效计数量;
S32:当接收到任务时,应用程序服务器判断有效计数量是否大于零;如果是,执行S33和S34;如果否,执行S35;
S33:则应用程序服务器针对接收到的任务进行任务计数;S34:更新有效计数量;
S35:应用程序服务器再次向缓存服务器发送批量计数请求。S35就是返回执行步骤101。
为了进一步减小对缓存服务器的访问压力,步骤102还可以采用第四种实现方式,第四种实现方式是在上述第三实现方式的基础上增加S36:
具体是在,S32判断为否时,先执行S36。
S36:应用程序服务器判断缓存服务器已分配的计数总量是否超过预设阈值;如果是,执行S37,如果否,执行S35;
S37:结束任务计数。
采用第四种实现方式,应用程序服务器在本地先进行判断,然后再根据判断结果决定是否再访问缓存服务器以请求新一批的计数量,这样就能够根据实际情况来决定是否访问缓存服务器,能够进一步的减小对缓存服务器的访问压力。
在步骤102的第三种实现方式和第四种实现方式中,缓存服务器仅需要响应于应用程序服务器的请求,直接向其分配计数量即可,缓存服务器并不关注分配的计数量是否就是有效计数量;可以理解为,只要缓存服务器接收到批量分配请求,缓存服务器就会向应用程序服务器分配计数量,由应用程序服务器自己判断分配到的计数量是否为有效计数量。
在实现时,上述S31可以包括:
应用程序服务器判断所述计数总量是否小于预设阈值;
如果是,应用程序服务器确定有效计数量为所述计数量;
如果否,应用程序服务器按照如下公式计算有效计数量:
所述有效计数量=所述计数量-(所述计数总量-所述预设阈值)。
举例说明:预设阈值为10000,若已分配的计数总量为10000,即,已完全分配。此时,应用程序服务器当前请求的计数量为100,则缓存服务器响应于该请求,直接向其分配计数量为100,并记录已分配的计数总量为10100;应用程序服务器接收到分配的计数量100,以及缓存服务器反馈的计数总量10100,则应用程序服务器判断出10100大于预设阈值10000;则计算有效计数量=100-(10100-10000)=0。
在步骤102的上述两种实现方式中,缓存服务器只需要响应批量计数请求,分配计数量,不必关注计数量具体是否为可用的,而是由应用程序服务器独立计算出有效计数量,这样,就能够降低缓存服务器的实现复杂度。
步骤102的上述四种实现方式中描述的步骤“应用程序服务器针对接收到的任务进行任务计数”具体有以下两种实现方式:
一种是,应用程序服务器控制任务计数器从零开始,按照逐次增一的方式针对接收到的任务进行任务计数。
若采用这种方式,应用程序服务器在接收到缓存服务器分配的计数量时,就需要将计数器初始化为零,从而使计数器从零开始进行计数,一旦应用程序服务器接收到任务,需要计数时,就控制计数器执行加一操作。
另一种是,应用程序服务器控制任务计数器从所述计数量开始,按照逐次减一的方式,针对接收到的任务进行任务计数。
若采用这种方式,应用程序服务器在接收到缓存服务器分配的计数量时,就需要将计数器初始化为有效计数量,从而使计数器从有效计数量开始进行计数,一旦应用程序服务器接收到任务,需要计数时,就控制计数器执行减一操作。
在上述方法的基础上,发明人还考虑到,在实际应用中,***中各个应用程序服务器的启动和关闭时间并非同步,因此,为了保证任务计数的可靠性,还可以在上述图1所示方法的基础上增加如下步骤:
应用程序服务器在***关闭或重启时,将保存的有效计数量反馈给缓存服务器;所述有效计数量是指应用程序服务器可用的计数量。
这样,某台App Server关闭***或者重启***时,可以通过***容器的Shutdown Hook(关闭钩子),将该App Server内存中的有效计数量归还给CacheServer,以备计数量的再分配。
其中,Shutdown Hook具体实现过程是,向虚拟机注册一个线程,当程序退出时,虚拟机会启动这个线程,可以在这个线程的运行中作一些预设的工作。在本申请实施例中,主要利用Shutdown Hook获取内存中的有效计数量并反馈给Cache Server。
从上述实施例可以看出,利用本申请的技术方案实现任务监控,主要是利用应用程序服务器向缓存服务器发送批量计数请求,接收缓存服务器分配的计数量;所述计数量是缓存服务器为应用程序服务器分配的、用于统计任务个数的门限值;应用程序服务器根据所述计数量,通过计数方式在本地进行任务监控。可以理解为,应用程序服务器向缓存服务器申请计数量,然后根据申请到的计数量在本地独立完成任务监控,即,当有任务时,应用程序服务器并非直接请求缓存服务器执行计数,而是在本地执行计数。可见:应用程序服务器无需在每次接收到的任务时,就直接访问缓存服务器,而仅需要与缓存服务器进行一次或几次交互,得到缓存服务器分配的计数量,基于分配的计数量在本地独立完成任务监控,这样就能够分担缓存服务器的任务计数压力,大大减小对缓存服务器的访问量,能够很好地适用于高并发的业务场景,从而提高整个***的性能。
下面结合图3对本申请提供的任务监控方法进行示例性说明。
请参阅图3,图3为本申请提供的一种任务监控方法实施例2的流程图,该方法可以由应用程序服务器(App Server)执行,该方法可以包括:步骤201-207:
步骤201:应用程序服务器向缓存服务器发送批量计数请求,接收缓存服务器分配的计数量和当前已分配的计数总量;所述批量计数请求携带有应用程序可承载的计数量。其中,所述计数量是缓存服务器为应用程序服务器分配的、用于统计任务个数的门限值。其中,所述计数总量是缓存服务器当前已分配的计数量的总和。
在实现时,缓存服务器接收到应用程序服务器发送的批量计数请求之后,响应与该请求,为应用程序服务器分配计数量,并向应用程序服务器反馈当前已分配的计数总量。
举例说明:假设,集群***中包含两个应用程序服务器App Server1和App Server2,App Server1和App Server2是用来监控规则A的命中任务,规则A的任务对应的预设阈值为400。
当App Server1上的规则A第1次命中时,App Server1第1次向缓存服务器(Cache Server)请求计数量。
Cache Server首次接收到App Server1发送的批量计数请求;该批量计数请求包括:App Server1可承载的计数量为100。
Cache Server向App Server1分配计数量100,此次分配后,统计当前已分配的计数总量为100,向App Server1反馈当前已分配的计数总量为100。
步骤202:应用程序服务器根据所述计数量和所述计数总量,计算应用程序服务器有效计数量。
应用程序服务器每次从缓存服务器请求到计数量之后,就需要计算有效计数量,有效计数量是指应用程序服务器可用的计数量;因为,缓存服务器只负责分配计数量,但并不监管是否超过预设阈值,所以,应用程序服务器需要通过有效计数量来衡量是否超过预设阈值。
在这里,预设阈值是用户根据实际需求,针对任务类型而预先设置的阈值。该预设阈值是用于限制任务个数的门限值,当统计的任务没有超过门限值时,则正常处理任务,但当统计的任务已经超过门限值时,则针对任务执行预设操作,例如,放弃处理该任务。在实现时,步骤202的具体实现可以参照上文描述的内容,此处不再赘述。
举例说明:示例1,如上述示例描述的,App Server1接收到的所述计数量为100,接收到的所述计数总量为100,预设阈值为400。可知,所述计数总量小于所述预设阈值;则确定有效计数量为100。
示例2,假设App Server1接收到的所述计数量为100,接收到的所述计数总量为500(缓存服务器已经向集群***中的应用程序服务器共分配的计数量为500),预设阈值为400。可知,所述计数总量大于所述预设阈值;计算有效计数量=100-(500-400)=0。
上述步骤201和202描述的是,应用程序服务器向缓存服务器申请计数量的实现过程,应用程序服务器申请计数量的目的是,在本地独立地批量地完成任务监控统计,以减小对缓存服务器的访问次数。因此,在确定了有效计数量之后,应用程序服务器就按照步骤203-207实现对任务监控和统计。
步骤203:当应用程序服务器接收到任务时,判断有效计数量是否大于零;如果是,执行步骤204;否则执行步骤205;
步骤204:应用程序服务器针对接收到的任务进行任务计数;
步骤205:应用程序服务器判断所述计数总量是否大于预设阈值;如果是,执行步骤206;否则执行步骤207;
步骤206:结束任务计数。
步骤207:应用程序服务器再次向缓存服务器发送批量计数请求。即返回至步骤201,再次申请计数量。
接下来通过示例,对步骤203-207的具体实现过程进行解释说明。
示例3,如上述示例1描述的,App Server1接收到的所述计数量为100,接收到的所述计数总量为100,预设阈值为400。可知,所述计数总量小于所述预设阈值;则确定有效计数量为100。
App Server1和App Server2的作用是进行规则A命中的任务监控,针对命中的任务进行相应的处理。具体过程如下:
当App Server1的规则A第一次命中时,则产生第一个任务,此时,AppServer1执行步骤203:判断有效计数量是否大于零;可知:100大于0;因此,App Server1进行任务计数;例如:App Server1控制有效计数量减一操作,并更新有效计数量。执行完毕后,有效计数量从100更新为99。
当App Server1的规则A第二次命中时,则产生第二个任务,此时,AppServer1不需要再向Cache Server请求计数,而是在本机上重复执行步骤203:判断有效计数量是否大于零;由于有效计数量已更新为99,此时判断出99大于0,因此,App Server1执行任务计数;例如:App Server1控制有效计数量减一操作,并更新有效计数量。执行完毕后,有效计数量从99更新为98。
以此类推,当AppServer1上规则A第3—100次命中,其处理过程类似第2次任务,此处不做详细说明。
但当App Server1的规则A第101次命中时,则产生第101个任务,此时,App Server1执行步骤203:判断有效计数量是否大于零;由于App Server1之前已经接收了100个任务,因此其有效计数量在之前已更新为0,此时判断出有效计数量不大于0,则App Server1再执行步骤205。由于所述计数总量为100小于预设阈值400,则执行步骤207,即再次执行步骤201,应用程序服务器再次向缓存服务器发送批量计数请求。此时,App Server1第二次向Cache Server发送批量计数请求;则App Server1再次步骤201-202以申请计数量并计算有效计数量。
假设,在App Server1第二次向Cache Server发送批量计数请求之前,App Server2已经向Cache Server申请过3次计数量,每次分配的计数量为100。即,在App Server1第二次向Cache Server发送批量计数请求之前,CacheServer向App Server1分配了一次计数量,分配的计数量为100;向AppServer2分配了三次计数量,每次分配的计数量为100,则Cache Server已分配的计数总量为100+300=400。
而Cache Server响应于App Server1的第二次发送的请求,向其分配计数量为100,反馈当前已分配的计数总量为500(之前已分配的400加上现在分配的100)。则App Server1确定有效计数量=100-(500-400)=0。
则App Server1针对第101个任务,再执行步骤104:判断有效计数量是否大于零;由于当前有效计数量为0,此时,判断出有效计数量不大于0,则App Server1执行步骤205。由于所述计数总量为500大于预设阈值400,则App Server1执行步骤206:App Server1结束任务计数。
当AppServer1上规则A第102次命中时,生成第102个任务,此时,有效计数量为0,则处理过程与上述针对第101个任务的处理过程相同,结束任务计数即可。可见,后续接收到的任务,AppServer1不再访问Cache Server而是在本地独立地完成相应处理,这样就大大减少了Cache Server的访问量。
该示例中的AppServer2的处理过程与AppServer1上述处理过程类似,此处不再赘述。
下面结合图4对本申请提供的应用于缓存服务器的任务监控方法进行解释说明。
请参阅图4,图4为本申请提供的一种任务监控方法实施例3的流程图,该方法可以由缓存服务器(Cache Server)执行,该方法可以包括:步骤301-303:
步骤301:缓存服务器接收应用程序服务器发送的批量计数请求;
步骤301:缓存服务器向应用程序服务器分配计数量,所述计数量是用于统计任务个数的门限值;以使所述应用程序服务器根据接收到的计数量,通过计数方式进行任务监控。
在实现时,所述方法还包括:缓存服务器分配计数量时,还向应用程序服务器反馈当前已分配的计数总量,以使应用程序服务器根据所述计数量和计数总量计算有效计数量,并根据有效计数量进行任务监控。
可选的,所述缓存服务器向应用程序服务器分配计数量,包括:
缓存服务器根据预设阈值和***内应用程序服务器总个数,计算平均计数量,按照所述平均计数量向应用程序服务器分配计数量;或者,
缓存服务器根据所述批量计数请求包含的应用程序服务器可承载的计数量,向应用程序服务器分配计数量。
可选的,所述缓存服务器根据所述批量计数请求包含的应用程序服务器可承载的计数量,向应用程序服务器分配计数量,包括:
缓存服务器计算预设阈值与已分配的计数总量的差值,所述差值为可分配的计数量;
当可分配的计数量小于所述应用程序服务器可承载的计数量时,缓存服务器向应用程序服务器分配的计数量为所述可分配的计数量;
当可分配的计数量不小于所述应用程序服务器可承载的计数量时,缓存服务器向应用程序服务器分配的计数量为所述应用程序服务器可承载的计数量。
从上述实施例可以看出,利用本申请提供的技术方案,缓存服务器只需要响应应用程序服务器发送的批量计数请求,为应用程序服务器分配计数量,以使应用程序服务器根据接收到的任务量,通过计数方式独立进行任务监控。对缓存服务器而言,无需再像现有技术一样,针对每个任务进行计数统计,而通过分配计数量的方式,给应用程序服务器分配用于任务统计的门限值,这就是把任务统计的工作分配给应用程序服务器,由应用程序服务器根据该门限值在本地独立进行任务统计。这种分配计数量的方式,大大减小了缓存服务器与应用程序服务器的交互次数,将计数压力分散到不同的应用程序服务器,就能够极大的减少缓存服务器的访问量,克服了由于缓存服务器访问瓶颈导致整个***的性能差的问题。
与上述方法相对应的,本申请还提供了对应的装置,下面结合附图对该装置进行解释说明。
请参阅图5,图5为本申请提供的一种任务监控装置实施例1的结构图,该装置可以配置在应用程序服务器中,以实现其功能,该装置可以包括以下单元:
发送及接收单元401,用于向缓存服务器发送批量计数请求,接收缓存服务器分配的计数量;所述计数量是缓存服务器为应用程序服务器分配的、用于统计任务个数的门限值;
任务监控单元402,用于根据所述计数量,通过计数方式在本地进行任务监控。
可选的,所述发送及接收单元,包括:
发送子单元,用于向缓存服务器发送携带有应用程序服务器可承载的计数量的批量计数请求;
接收子单元,用于接收缓存服务器根据所述可承载的计数量向应用程序服务器分配的计数量。
可选的,所述装置还包括:
计算单元,用于根据预设阈值和***内应用程序服务器总个数,计算平均计数量;
选择单元,用于从所述平均计数量和***默认分配值中选择最小值,将所述最小值作为应用程序服务器可承载的计数量。
可选的,所述任务监控单元,包括:
第一判断子单元,用于在接收到任务时,判断本地当前已统计的任务量是否小于所述计数量;如果是,执行任务计数子单元;所述任务计数子单元,用于针对接收到的任务进行任务计数;
如果否,执行所述发送及接收单元,以再次向缓存服务器发送批量计数请求。
可选的,所述任务监控单元,包括:
有效计数量计算子单元,用于根据所述计数量和缓存服务器反馈的已分配的计数总量,计算应用程序服务器有效计数量;
第二判断子单元,用于当接收到任务时,应用程序服务器判断有效计数量是否大于零;如果是,执行任务计数子单元和有效计数量更新子单元;所述任务计数子单元,用于针对接收到的任务进行任务计数;所述更新子单元,用于在任务计数子单元执行任务计数后,更新有效计数量;如果否,执行所述发送及接收单元,以再次向缓存服务器发送批量计数请求。
可选的,所述有效计数量计算子单元,包括:
判断子单元,用于判断所述计数总量是否小于预设阈值;如果是,执行确定模块,如果否,执行计算模块;
确定子单元,用于确定有效计数量为所述计数量;
计算子单元,用于按照如下公式计算有效计数量:
所述有效计数量=所述计数量-(所述计数总量-所述预设阈值)。
可选的,所述装置还包括:
当所述第一判断单元或所述第二判断单元判断为否时,触发所述第三判断单元,所述第三判断子单元,用于判断缓存服务器已分配的计数总量是否超过预设阈值;如果是,执行结束子单元,所述结束子单元,用于结束任务计数;如果否,执行所述发送及接收单元,以再次向缓存服务器发送批量计数请求。
可选的,所述任务计数子单元,包括:
第一计数子单元,用于控制任务计数器从零开始,按照逐次增一的方式针对接收到的任务进行任务计数;或,
第二计数子单元,用于控制任务计数器从所述计数量开始,按照逐次减一的方式,针对接收到的任务进行任务计数。
可选的,所述装置还包括:
反馈单元,用于在应用程序服务器***关闭或重启时,将保存的有效计数量反馈给缓存服务器;所述有效计数量是指应用程序服务器可用的计数量。
请参阅图6,图6为本申请提供的一种任务监控装置实施例2的结构图,该装置可以配置在缓存服务器中,以实现其功能,该装置可以包括以下单元:
接收单元501,用于接收应用程序服务器发送的批量计数请求;
分配单元502,用于向应用程序服务器分配计数量,所述计数量是用于统计任务个数的门限值;以使所述应用程序服务器根据接收到的计数量,通过计数方式进行任务监控。
可选的,所述装置还包括:
反馈单元,用于在分配计数量时,向应用程序服务器反馈当前已分配的计数总量,以使应用程序服务器根据所述计数量和计数总量计算有效计数量,并根据有效计数量进行任务监控。
可选的,所述分配单元,包括:
第一分配子单元,用于根据预设阈值和***内应用程序服务器总个数,计算平均计数量,按照所述平均计数量向应用程序服务器分配计数量;或者,
第二分配子单元,用于根据所述批量计数请求包含的应用程序服务器可承载的计数量,向应用程序服务器分配计数量。
可选的,所述第二分配子单元,包括:
计算子单元,用于计算预设阈值与已分配的计数总量的差值,所述差值为可分配的计数量;
分配子单元,用于当可分配的计数量小于所述应用程序服务器可承载的计数量时,向应用程序服务器分配的计数量为所述可分配的计数量;或者,用于当可分配的计数量不小于所述应用程序服务器可承载的计数量时,向应用程序服务器分配的计数量为所述应用程序服务器可承载的计数量。
所述领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述到的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,可以采用软件功能单元的形式实现。
需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上对本申请所提供的任务监控方法和装置进行了详细介绍,本文中应用了具体实施例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (26)

1.一种任务监控方法,其特征在于,所述方法包括:
应用程序服务器向缓存服务器发送批量计数请求,接收缓存服务器分配的计数量;所述计数量是缓存服务器为应用程序服务器分配的、用于统计任务个数的门限值;
应用程序服务器根据所述计数量,通过计数方式在本地进行任务监控。
2.根据权利要求1所述的方法,其特征在于,所述应用程序服务器向缓存服务器发送批量计数请求,接收缓存服务器分配的计数量,包括:
所述应用程序服务器向缓存服务器发送携带有应用程序服务器可承载的计数量的批量计数请求;
所述应用程序服务器接收缓存服务器根据所述可承载的计数量向其分配的计数量。
3.根据权利要求2所述的方法,其特征在于,所述应用程序服务器通过以下方式计算应用程序服务器可承载的计数量:
应用程序服务器根据预设阈值和***内应用程序服务器总个数,计算平均计数量;
应用程序服务器从所述平均计数量和***默认分配值中选择最小值,将所述最小值作为应用程序服务器可承载的计数量。
4.根据权利要求1所述的方法,其特征在于,所述应用程序服务器根据所述计数量,通过计数方式在本地进行任务监控,包括:
应用程序服务器接收到任务时,判断本地当前已统计的任务量是否小于所述计数量;如果是,应用程序服务器针对接收到的任务进行任务计数;
如果否,应用程序服务器再次向缓存服务器发送批量计数请求。
5.根据权利要求1所述的方法,其特征在于,所述应用程序服务器根据所述计数量,通过计数方式在本地进行任务监控,包括:
应用程序服务器根据所述计数量和缓存服务器反馈的已分配的计数总量,计算应用程序服务器有效计数量;
当接收到任务时,应用程序服务器判断有效计数量是否大于零;如果是,则应用程序服务器针对接收到的任务进行任务计数,并更新有效计数量;如果否,应用程序服务器再次向缓存服务器发送批量计数请求。
6.根据权利要求5所述的方法,其特征在于,所述应用程序服务器根据所述计数量和缓存服务器反馈的已分配的计数总量,计算应用程序服务器有效计数量,包括:
应用程序服务器判断所述计数总量是否小于预设阈值;
如果是,应用程序服务器确定有效计数量为所述计数量;
如果否,应用程序服务器按照如下公式计算有效计数量:
所述有效计数量=所述计数量-(所述计数总量-所述预设阈值)。
7.根据权利要求4或5所述的方法,其特征在于,在所述应用程序服务器再次向缓存服务器发送批量计数请求之前,所述方法还包括:
应用程序服务器判断缓存服务器已分配的计数总量是否超过预设阈值;如果是,结束任务计数;如果否,则应用程序服务器再次向缓存服务器发送批量计数请求。
8.根据权利要求4或5所述的方法,其特征在于,所述应用程序服务器针对接收到的任务,进行任务计数,包括:
应用程序服务器控制任务计数器从零开始,按照逐次增一的方式针对接收到的任务进行任务计数;或,
应用程序服务器控制任务计数器从所述计数量开始,按照逐次减一的方式,针对接收到的任务进行任务计数。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
应用程序服务器在***关闭或重启时,将保存的有效计数量反馈给缓存服务器;所述有效计数量是指应用程序服务器可用的计数量。
10.一种任务监控方法,其特征在于,所述方法包括:
缓存服务器接收应用程序服务器发送的批量计数请求;
缓存服务器向应用程序服务器分配计数量,所述计数量是用于统计任务个数的门限值;以使所述应用程序服务器根据接收到的计数量,通过计数方式进行任务监控。
11.根据权利要求10所述的方法,其特征在于,所述方法还包括:缓存服务器分配计数量时,还向应用程序服务器反馈当前已分配的计数总量,以使应用程序服务器根据所述计数量和计数总量计算有效计数量,并根据有效计数量进行任务监控。
12.根据权利要求10所述的方法,其特征在于,所述缓存服务器向应用程序服务器分配计数量,包括:
缓存服务器根据预设阈值和***内应用程序服务器总个数,计算平均计数量,按照所述平均计数量向应用程序服务器分配计数量;或者,
缓存服务器根据所述批量计数请求包含的应用程序服务器可承载的计数量,向应用程序服务器分配计数量。
13.根据权利要求12所述的方法,其特征在于,所述缓存服务器根据所述批量计数请求包含的应用程序服务器可承载的计数量,向应用程序服务器分配计数量,包括:
缓存服务器计算预设阈值与已分配的计数总量的差值,所述差值为可分配的计数量;
当可分配的计数量小于所述应用程序服务器可承载的计数量时,缓存服务器向应用程序服务器分配的计数量为所述可分配的计数量;
当可分配的计数量不小于所述应用程序服务器可承载的计数量时,缓存服务器向应用程序服务器分配的计数量为所述应用程序服务器可承载的计数量。
14.一种任务监控装置,其特征在于,所述装置包括:
发送及接收单元,用于向缓存服务器发送批量计数请求,接收缓存服务器分配的计数量;所述计数量是缓存服务器为应用程序服务器分配的、用于统计任务个数的门限值;
任务监控单元,用于根据所述计数量,通过计数方式在本地进行任务监控。
15.根据权利要求14所述的装置,其特征在于,所述发送及接收单元,包括:
发送子单元,用于向缓存服务器发送携带有应用程序服务器可承载的计数量的批量计数请求;
接收子单元,用于接收缓存服务器根据所述可承载的计数量向应用程序服务器分配的计数量。
16.根据权利要求14所述的装置,其特征在于,所述装置还包括:
计算单元,用于根据预设阈值和***内应用程序服务器总个数,计算平均计数量;
选择单元,用于从所述平均计数量和***默认分配值中选择最小值,将所述最小值作为应用程序服务器可承载的计数量。
17.根据权利要求14所述的装置,其特征在于,所述任务监控单元,包括:
第一判断子单元,用于在接收到任务时,判断本地当前已统计的任务量是否小于所述计数量;如果是,执行任务计数子单元;所述任务计数子单元,用于针对接收到的任务进行任务计数;
如果否,执行所述发送及接收单元,以再次向缓存服务器发送批量计数请求。
18.根据权利要求14所述的装置,其特征在于,所述任务监控单元,包括:
有效计数量计算子单元,用于根据所述计数量和缓存服务器反馈的已分配的计数总量,计算应用程序服务器有效计数量;
第二判断子单元,用于当接收到任务时,应用程序服务器判断有效计数量是否大于零;如果是,执行任务计数子单元和有效计数量更新子单元;所述任务计数子单元,用于针对接收到的任务进行任务计数;所述更新子单元,用于在任务计数子单元执行任务计数后,更新有效计数量;如果否,执行所述发送及接收单元,以再次向缓存服务器发送批量计数请求。
19.根据权利要求18所述的装置,其特征在于,所述有效计数量计算子单元,包括:
判断子单元,用于判断所述计数总量是否小于预设阈值;如果是,执行确定模块,如果否,执行计算模块;
确定子单元,用于确定有效计数量为所述计数量;
计算子单元,用于按照如下公式计算有效计数量:
所述有效计数量=所述计数量-(所述计数总量-所述预设阈值)。
20.根据权利要求17或18所述的装置,其特征在于,所述装置还包括:
当所述第一判断单元或所述第二判断单元判断为否时,触发所述第三判断单元,所述第三判断子单元,用于判断缓存服务器已分配的计数总量是否超过预设阈值;如果是,执行结束子单元,所述结束子单元,用于结束任务计数;如果否,执行所述发送及接收单元,以再次向缓存服务器发送批量计数请求。
21.根据权利要求17或18所述的装置,其特征在于,所述任务计数子单元,包括:
第一计数子单元,用于控制任务计数器从零开始,按照逐次增一的方式针对接收到的任务进行任务计数;或,
第二计数子单元,用于控制任务计数器从所述计数量开始,按照逐次减一的方式,针对接收到的任务进行任务计数。
22.根据权利要求14所述的装置,其特征在于,所述装置还包括:
反馈单元,用于在应用程序服务器***关闭或重启时,将保存的有效计数量反馈给缓存服务器;所述有效计数量是指应用程序服务器可用的计数量。
23.一种任务监控装置,其特征在于,所述装置包括:
接收单元,用于接收应用程序服务器发送的批量计数请求;
分配单元,用于向应用程序服务器分配计数量,所述计数量是用于统计任务个数的门限值;以使所述应用程序服务器根据接收到的计数量,通过计数方式进行任务监控。
24.根据权利要求23所述的装置,其特征在于,所述装置还包括:
反馈单元,用于在分配计数量时,向应用程序服务器反馈当前已分配的计数总量,以使应用程序服务器根据所述计数量和计数总量计算有效计数量,并根据有效计数量进行任务监控。
25.根据权利要求23所述的装置,其特征在于,所述分配单元,包括:
第一分配子单元,用于根据预设阈值和***内应用程序服务器总个数,计算平均计数量,按照所述平均计数量向应用程序服务器分配计数量;或者,
第二分配子单元,用于根据所述批量计数请求包含的应用程序服务器可承载的计数量,向应用程序服务器分配计数量。
26.根据权利要求25所述的装置,其特征在于,所述第二分配子单元,包括:
计算子单元,用于计算预设阈值与已分配的计数总量的差值,所述差值为可分配的计数量;
分配子单元,用于当可分配的计数量小于所述应用程序服务器可承载的计数量时,向应用程序服务器分配的计数量为所述可分配的计数量;或者,用于当可分配的计数量不小于所述应用程序服务器可承载的计数量时,向应用程序服务器分配的计数量为所述应用程序服务器可承载的计数量。
CN201610078167.9A 2016-02-03 2016-02-03 一种任务监控方法及装置 Pending CN107040558A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610078167.9A CN107040558A (zh) 2016-02-03 2016-02-03 一种任务监控方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610078167.9A CN107040558A (zh) 2016-02-03 2016-02-03 一种任务监控方法及装置

Publications (1)

Publication Number Publication Date
CN107040558A true CN107040558A (zh) 2017-08-11

Family

ID=59532213

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610078167.9A Pending CN107040558A (zh) 2016-02-03 2016-02-03 一种任务监控方法及装置

Country Status (1)

Country Link
CN (1) CN107040558A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108491304A (zh) * 2018-03-06 2018-09-04 平安科技(深圳)有限公司 电子装置、业务***风险控制方法及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101923577A (zh) * 2010-09-02 2010-12-22 北京开心人信息技术有限公司 一种可扩展的计数方法与***
CN102833281A (zh) * 2011-06-15 2012-12-19 中兴通讯股份有限公司 一种分布式自增计数的实现方法、装置及***
US20150006754A1 (en) * 2009-06-30 2015-01-01 Oracle International Corporation Completion Tracking for Groups of Transfer Requests
CN105095423A (zh) * 2015-07-15 2015-11-25 北京奇虎科技有限公司 计数数据写入方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150006754A1 (en) * 2009-06-30 2015-01-01 Oracle International Corporation Completion Tracking for Groups of Transfer Requests
CN101923577A (zh) * 2010-09-02 2010-12-22 北京开心人信息技术有限公司 一种可扩展的计数方法与***
CN102833281A (zh) * 2011-06-15 2012-12-19 中兴通讯股份有限公司 一种分布式自增计数的实现方法、装置及***
CN105095423A (zh) * 2015-07-15 2015-11-25 北京奇虎科技有限公司 计数数据写入方法和装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108491304A (zh) * 2018-03-06 2018-09-04 平安科技(深圳)有限公司 电子装置、业务***风险控制方法及存储介质
CN108491304B (zh) * 2018-03-06 2019-12-10 平安科技(深圳)有限公司 电子装置、业务***风险控制方法及存储介质

Similar Documents

Publication Publication Date Title
CN109062658A (zh) 实现计算资源服务化的调度方法、装置、介质、设备及***
US9659081B1 (en) Independent data processing environments within a big data cluster system
EP1024432A2 (en) Performance counter for monitoring multiple events
CN106095589B (zh) 一种分配分区的方法、装置及***
CN106502918B (zh) 一种内存调度方法及装置
CN101652838B (zh) 配方和元件控制模块及其方法
CN106681834A (zh) 分布式计算方法、管理装置及***
CN107977763A (zh) 一种资源分配方法和相关装置
CN108205541A (zh) 分布式网络爬虫任务的调度方法及装置
CN106326002A (zh) 资源调度方法、装置及设备
CN108519917A (zh) 一种资源池分配方法和装置
CN106997546A (zh) 一种订单处理方法及装置
CN106407207A (zh) 一种实时新增数据更新方法和装置
CN106844027A (zh) 一种基于节点负载的任务调度方法
CN110377854A (zh) 用户访问行为信息监控方法及装置、计算机设备
CN106936877A (zh) 一种内容分发方法、装置及***
CN110020046A (zh) 一种数据抓取方法及装置
CN110399217A (zh) 一种内存资源分配方法、装置及设备
CN106681830B (zh) 一种任务缓存空间监测方法和装置
CN107040558A (zh) 一种任务监控方法及装置
CN100388183C (zh) 一种实现加权最小连接分配的服务器负载均衡方法
CN111768174A (zh) 一种活动管理方法、装置、设备及介质
CN104407917B (zh) 一种基于jms的交易处理方法及装置
CN109544347A (zh) 尾差分配方法、计算机可读存储介质及尾差分配***
CN107908730A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20170811

RJ01 Rejection of invention patent application after publication