CN105389214B - 一种监控方法及系统 - Google Patents

一种监控方法及系统 Download PDF

Info

Publication number
CN105389214B
CN105389214B CN201510763531.0A CN201510763531A CN105389214B CN 105389214 B CN105389214 B CN 105389214B CN 201510763531 A CN201510763531 A CN 201510763531A CN 105389214 B CN105389214 B CN 105389214B
Authority
CN
China
Prior art keywords
transaction request
time
concurrent
response time
target transaction
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
CN201510763531.0A
Other languages
English (en)
Other versions
CN105389214A (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 Construction Bank Corp
Original Assignee
China Construction Bank Corp
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 Construction Bank Corp filed Critical China Construction Bank Corp
Priority to CN201510763531.0A priority Critical patent/CN105389214B/zh
Publication of CN105389214A publication Critical patent/CN105389214A/zh
Application granted granted Critical
Publication of CN105389214B publication Critical patent/CN105389214B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3017Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is implementing multitasking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请提供了一种监控方法及系统,通过对当前服务中正在处理的交易请求的第一响应时间进行监测,将存在的第一响应时间超过预设警戒时间的交易请求记录为目标交易请求,并减小该目标交易请求的当前并发数,经第一预设时间,验证检测到的该目标交易请求的第二响应时间仍大于预设警戒时间,返回该减小该目标交易请求的当前并发数步骤,直至目标交易请求的当前并发数达到其预设下限值。可见,本实施这种根据交易请求的响应时间的变化,动态调整该交易请求的当前并发数的方式,无需人工干预,也能够为当前服务中的其他正常交易请求预留一定的处理资源,使得其他正常交易请求能够快速得到处理,确保整个服务不会因此而瘫痪,使得客户拥有较好的体验。

Description

一种监控方法及系统
技术领域
本申请主要涉及联机事务处理系统的应用领域,更具体地说是涉及一种信息监控方法及系统。
背景技术
联机事务处理是面向事务应用的实际运行模式,其基本形式是大量会随机申请服务的客户,通过多种设备和渠道连接到业务处理系统中来,每一个服务请求在业务处理系统中以一个事务的方式运行,通过对一定业务数据的处理来完成客户的请求,并向客户返回数据。
其中,在集群式联机事务处理系统中,发生的每笔业务处理都是一个事务,业内通常将其称为交易,为了保证该系统的可靠运行,通常会针对该集群内的每个服务预设总并发流控阈值,并为每个服务中所有交易码设置固定的并发流控阈值,当某支交易的并发数达到超过预设的并发流控阈值时,系统将拒绝响应该交易的多余请求,从而避免因该交易并发数过大,而影响系统对其他正常交易的处理。
然而,在实际应用中,由于系统的每个服务上通常都有成千上万的交易码,当多支交易的响应时间变长很可能耗尽本服务的所有资源,使得正常交易请求无法得到处理,甚至还会导致该服务瘫痪,大大降低了客户体验。
发明内容
有鉴于此,本发明提供了一种监控方法及系统,实现了根据异常的交易请求的响应时间的变化,动态调整该交易请求的当前并发数,从而保证正常交易可随时获取系统的处理资源,并得到及时处理,进而确保当前服务不会因异常的交易请求耗尽其所有资源而瘫痪,提高了客户体验。
为了实现上述目的,本申请提供了以下技术方案:
一种监控方法,所述方法包括:
监测当前服务中正在处理的交易请求的第一响应时间,并验证所述正在处理的交易请求中是否存在第一响应时间大于预设警戒时间的交易请求;
将所述正在处理的交易请求中存在的所述第一响应时间大于预设警戒时间的交易请求作为目标交易请求,并减小所述目标交易请求的当前并发数;
经第一预设时间,验证检测到的所述目标交易请求的第二响应时间仍大于所述预设警戒时间时,返回所述减小所述目标交易请求的当前并发数步骤,直至所述目标交易请求的当前并发数减小至所述目标交易请求的预设下限值。
优选的,在所述减小所述目标交易请求的当前并发数之后,所述方法还包括:
经第二预设时间,验证所述目标交易请求的第三响应时间是否小于所述预设警戒时间;
当所述目标交易请求的第三响应时间小于所述预设警戒时间时,恢复所述目标交易请求的当前并发数至预设初始值。
优选的,所述监测当前服务中正在处理的交易请求的第一响应时间包括:
每隔第一预设时间,通过独立的线程检测当前服务中正在处理的交易请求的第一响应时间。
优选的,所述减小所述目标交易请求的当前并发数具体为:
将所述目标交易请求的当前并发数减1。
优选的,当所述正在处理的交易请求中存在所述第一响应时间大于预设警戒时间的交易请求时,所述方法还包括:
记录所述第一响应时间大于预设警戒时间的交易请求。
优选的,在监测当前服务中正在处理的交易请求的第一响应时间过程中,所述方法还包括:
判断当前服务中正在处理的交易请求中是否存在已被记录的交易请求。
一种监控系统,所述系统包括:
监测模块,用于监测当前服务中正在处理的交易请求的第一响应时间;
调整模块,用于将所述正在处理的交易请求中存在的所述第一响应时间大于预设警戒时间的交易请求作为目标交易请求,并减小所述目标交易请求的当前并发数;
第一验证模块,用于经第一预设时间,验证检测到的所述目标交易请求的第二响应时间仍大于所述预设警戒时间时,触发所述调整模块直至所述目标交易请求的当前并发数减小至所述目标交易请求的预设下限值。
优选的,所述系统还包括:
第二验证模块,经第二预设时间,验证所述目标交易请求的第三响应时间是否小于所述预设警戒时间;
恢复模块,用于当所述第二验证模块的验证结果为是时,恢复所述目标交易请求的当前并发数至预设初始值。
优选的,所述监测模块包括:
检测单元,用于每隔第一预设时间,检测当前服务中正在处理的对应的交易请求的第一响应时间。
优选的,所述系统还包括:
记录模块,用于记录所述第一响应时间大于预设警戒时间的交易请求。
由此可见,与现有技术相比,本申请提供了一种监控方法及系统,通过对当前服务上正在处理的交易请求的第一响应时间进行监测,将存在的第一响应时间超过预设警戒时间的交易请求作为目标交易请求,并减小该目标交易请求的当前并发数,当经第一预设时间,验证检测到的该目标交易请求的第二响应时间仍大于预设警戒时间,返回该减小该目标交易请求的当前并发数步骤,直至该目标交易请求的当前并发数达到其预设下限值。可见,本实施这种根据交易请求的响应时间的变化,动态调整该交易请求的当前并发数的方式,无需人工干预,也能够为当前服务中的其他正常交易请求预留一定的处理资源,使得其他正常交易请求能够快速得到处理,确保整个服务不会因此而瘫痪,使得客户拥有较好的体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请提供的一种监控方法实施例的流程示意图;
图2为本申请提供的另一种监控方法实施例的流程示意图;
图3为本申请提供的一种监控系统实施例的结构示意图;
图4为本申请提供的另一种监控系统实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
对于现有的联机事务处理系统的应用,尤其是前端集群式联机事务处理系统的实际应用,由于为每个服务中的每项交易请求设置的是固定的并发流控阈值,一旦该交易请求的并发数超过该并发流控阈值,就会影响其他正常交易请求的处理;而且,当多个交易请求的响应时间变长,很可能会耗尽本服务的所有并发资源,此时也将会使其他交易请求无法得到处理,甚至会导致整个服务瘫痪,给客户带来较差体验。
对此,申请人提出采用人工干预的方式来控制正在处理的交易请求的并发数量,即当遇到上述情况时,通过人工减小这些交易请求的当前并发数来缓解本服务的压力,但这需要工作人员实时监控当前服务的交易情况,并及时且正确地调整对应交易请求的并发数,过程复杂,而且增大了工作人员的工作量,很容易因疲劳等因素忽略某些交易请求的交易情况,而无法及时在该交易异常时及时作出相应调整,从而无法保证服务的正常交易。为了改善人工干预方式中存在的问题,申请人提出根据异常交易响应时间的变化,动态调整交易的并发数,无需人工干预即可保障正常交易能够随时获取本服务的处理资源。
具体的,本申请提供了一种监控方法及系统,通过对当前服务中正在处理的交易请求的第一响应时间进行监测,将存在的第一响应时间超过预设警戒时间的交易请求作为目标交易请求,并减小该目标交易请求的当前并发数,当经第一预设时间,验证检测到的该目标交易请求的第二响应时间仍大于预设警戒时间,返回该减小该目标交易请求的当前并发数步骤,直至该目标交易请求的当前并发数达到其预设下限值。可见,本实施这种根据交易请求的响应时间的变化,动态调整该交易请求的当前并发数的方式,无需人工干预,也能够为当前服务中的其他正常交易请求预留一定的处理资源,使得其他正常交易请求能够快速得到处理,确保整个服务不会因此而瘫痪,使得客户拥有较好的体验。
为了使本申请的上述发明目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请提供的技术方案作进一步详细的说明。
如图1所示,为本申请提出的一种监控方法实施例的流程示意图,该方法可以包括:
步骤S110:监测当前服务中正在处理的交易请求的第一响应时间。
在实际应用中,对于系统中的每一个服务(或进程)来说,为了保证本服务中交易的正常进行,通常都会为其设定一个总的并发流控阈值,也就是说,当其中处理的交易请求的并发数达到本服务的总的并发流控阈值后,该服务将不再对多余交易的交易请求进行处理,以避免因占用过多该服务的并发资源而影响该服务的处理进度,甚至会导致整个服务瘫痪。
而对于当前服务中的每支交易来说,系统也会为其设置固定的并发流控阈值,当该交易的交易请求的并发数达到该并发流控阈值后,也不会再对多余的交易请求进行处理,以避免影响其他正常交易的处理。然而,在此期间,若当前服务中正在进行的某支交易的响应时间变长,也会因占用该当前服务的资源而影响其他正常交易请求的处理,甚至在有多支交易的交易请求的响应时间变长时,会因耗尽该当前服务的所有资源而导致整个服务瘫痪。可见,在实际应用中,不仅需要监控系统中每个服务中正在进行的交易数量,而且,还需要监控当前正在进行的交易的响应时间,本实施例主要是通过对后者进行监控,来达到为当前服务的其他正常交易预留一定资源,确保这些正常交易能够得到正常处理,进而避免当前服务瘫痪的效果。
具体的,本实施例可周期性地检查当前服务中正在进行的交易情况,即检测当前服务中正在处理的交易请求的第一响应时间,以便在该第一响应时间异常时及时进行处理。
可选的,在实际应用中,本申请可每隔第一预设时间,就通过独立的线程(thread)检测当前服务中正在处理的交易请求的第一响应时间,通过定时扫描这些独立线程(Txthread),就能够得到每个线程的检测结果,即每个正在处理的交易请求的第一响应时间,但并不局限于这一种监测方式。
其中,由于在多线程OS(Operating System,操作系统)中,通常在一个进程中包括多个线程,每个线程都是作为利用CPU的基本单位,且多个线程之间可以并发执行,甚至不同进程中的线程也能够并发执行,能够充分利用和发挥处理机和外围设备的并发工作能力。基于此,该可选实施例中,可通过相互独立的线程每隔第一预设时间就检测一次当前服务中正在处理的交易请求的响应时间,此时,该第一预设时间可以是对对应线程定时扫描(Txthread) 的休眠时间间隔,但并不局限于此。
另外,需要说明的是,上述第一响应时间并非仅指一个数值,也不是第一个响应时间,而是指满足上述条件的交易请求对应的响应时间,即当前服务中正在处理的交易请求有多少个,就会检测多少个正在处理的交易请求对应的响应时间,不同交易请求的第一响应时间可能不同,这要看实际情况,本申请对此不作限定。
作为本申请另一实施例,在对当前服务中正在处理的交易请求的当前响应时间进行监测过程中,可以先验证该交易请求中是否存在已被记录的曾经出现过第一响应时间大于预设警戒时间的目标交易请求,若存在记录的目标交易请求,可以直接验证该目标交易请求的第一响应时间是否降至预设警戒时间的交易请求,若否,可进入步骤S130,减小该目标交易请求的当前并发数,若是,直接执行步骤S160。
步骤S120:验证正在处理的交易请求中是否存在第一响应时间大于预设警戒时间的交易请求,若是,进入步骤S130;若否,返回步骤S110。
在本实施例中,该预设警戒时间可以是表明该交易请求的响应时间变长的临界值,一旦交易请求的响应时间超过该预设警戒时间后,可能会影响当前服务的其他正常交易,需要对该交易请求进行处理,但本申请对该预设警戒时间的具体数值不作限定。
在本实施例实际应用中,在对当前服务的正在处理的交易请求的监测过程中,可以验证其中的每一个正在处理的交易请求的第一响应时间是否超过其预设警戒时间,若超过,可将该交易请求记录为目标交易请求,以便后续对该目标交易请求进行处理。
其中,需要说明的是,在本实施实际应用中,可以为每一个交易请求设置对应的预设警戒时间,也可以为各交易请求设置统一的预设警戒时间,本申请对此不作具体限定。
可选的,当正在处理的某交易请求的第一响应时间超过其预设警戒时间时,还可以输出提示信息,如超时提示等等,本申请对该提示信息的具体输出方式及其包含的具体内容不作限定,可以直接向发送该交易请求的客户端反馈超时提醒,且该超时提醒可以是以在该客户端界面输出提示框的方式输出,也可以是以预设的警示音方式输出,或者也可以是以具体语音播报的方式输出,本申请在此不再一一列举。
步骤S130:将正在处理的交易请求中存在的第一响应时间大于预设警戒时间的交易请求作为目标交易请求,并减小该目标交易请求的当前并发数。
为了使得后续监测过程中明确得知正在处理的交易请求中哪些交易请求出现过其第一响应时间超过其预设警戒时间,本实施例可以在确定正在处理的交易请求中出现第一响应时间大于预设警戒时间的交易请求时,记录该交易请求作为目标交易请求,以便后续进一步对该目标交易请求的响应时间进行验证。
可选的,当确定当前正在处理的交易请求中存在第一响应时间大于预设警戒时间的目标交易请求时,还可以验证该交易请求是否是被已被记录的目标交易请求,若是,可减小该目标交易请求的当前并发数,若否,可记录该交易请求,并将其作为目标交易请求后执行后续步骤。
步骤S140:验证该目标交易请求的当前并发数是否达到其预设下限值,若是,进入步骤S150;若否,返回步骤S110。
结合上述分析,在正常情况下,系统会为每个交易码设置固定的并发流控阈值,而每支交易都对应一个交易码,也就是说,每支交易都有其固定的并发流控阈值,即允许该交易的交易请求的最大并发数,即一旦该交易请求的并发数超过其并发流控阈值,多余的交易请求就会被直接拒绝,从而确保该系统能够及时完成对当前正在处理的交易的处理。
其中,系统各服务的每支交易的并发流控阈值可通过非功能测试,并结合具体的生成情况确定,本申请对其具体数值不作限定,且各交易请求的并发流控阈值可以相同,也可以不同。
在实际应用中,由于交易请求的响应时间变长,通常会使该交易的交易请求并发数达到甚至超过其预设并发流控阈值,从而影响其他正常交易的处理,为了避免这一情况的发生,确保本服务中各正常交易得到及时处理,本实施例通过适当减少该目标交易请求的当前并发数,使其不超过甚至小于该目标交易请求的预设并发流控阈值,来为其他正常交易预留处一定的并发资源,从而避免响应时间变长的交易请求占用过多资源而影响其他正常交易的处理。
需要说明的是,本申请对响应时间变长的交易请求的当前并发数减小的具体数值不作限定,可以将该数值设置为可调的配置参数,且该数值越大,该交易请求的当前并发数会越快达到其并发下限值,但为了预防偶尔有几笔交易响应时间变长而导致流控的情况,该数值不能设置过大,具体可以根据应用系统的非功能测试来调整,本申请在此不再详述。
另外,上述预设下限值可以是保证系统交易效率,且不造成系统资源浪费的前提下,允许各交易的并发数的最小值,本申请对其具体数值不作限定,人可根据非功能测试得到,后续仍可根据生产等情况进行调整。
可选的,在实际应用中,可以将上述减小的数值设置为1,也即是说,对于第一响应时间大于预设警戒时间的正在处理的目标交易请求,可将其当前并发数减1,但并不局限于此。
步骤S150:验证检测到的该目标交易请求的第二响应时间是否小于预设警戒时间,若否,执行步骤S170;若是,进入步骤S160。
在实施例实际应用中,由于可以周期性(即每隔第一预设时间)对当前服务中正在处理的交易请求的响应时间进行监测,因而,在完成第一次监测后,对其中被记录的目标交易请求,会在下一次监测其响应时间时再次验证其当前响应时间是否仍大于预设警戒时间,若是,将继续按照上述规则减小其当前并发数,依次类推,直至该目标交易请求的当前并发数达到其预设下限值。
其中,在对目标交易请求的当前并发数进行调整后,客户端针对该交易发送的交易请求的响应时间会发生变化,若其调整后的当前并发数小于其预设下限值,可验证其当前响应时间是否小于预设警戒时间;当然,若其调整后的当前并发数仍大于预设下限值,仍可以按照上述方式继续调整该目标交易请求的并发数。
需要说明的是,对于未被系统处理的交易,客户端针对该交易发起的所有交易请求中的交易码相同,因而,具有相同交易码的交易请求的预设并发流控阈值也相同。
步骤S160:将目标交易请求的当前并发数恢复至预设初始值。
在实际应用中,经上述步骤的监控处理,确定响应时间变长的目标交易请求的当前响应时间恢复了,即小于预设警戒时间,为了保证系统对当前服务中交易请求的处理效率,可将该目标交易请求的当前并发数恢复至预设初始值,即增加对目标交易请求的并发数,具体可以一次性地将该目标交易请求的当前并发数恢复至预设初始值,也可以逐渐恢复,本申请对此不作限定。当然,在对目标交易请求的当前并发数进行动态调整过程中,若其当前并发数达到预设下限值,为了不浪费系统资源等因素,将不再继续减少其当前并发数。
可选的,在恢复目标交易请求的当前并发数时,若该目标交易请求被记录了,可以删除该记录,
步骤S170:输出超时提示信息。
在本实施例中,若按照上述监控步骤,对目标交易请求的当前并发数进行调整后,其响应时间仍大于该预设警戒时间,此时,可以输出超时提示信息,已告知发送该目标交易请求的客户端,可重新发送同一交易码的交易请求。
其中,本实施并不限定该超时提示信息的具体输出方式,可以是语音方式、报警提示音方式,也可以是在发送给目标交易请求的客户端输出提示窗口的方式等等,本申请在此不再一一列举。
作为本申请另一实施例,在上述实施例的基础上,按照上述监控方法对目标交易请求的当前并发数进行动态调整后,当前服务为当前正在处理的交易请求预留出了更多的资源,通常情况下就会加快系统对这些交易请求的处理速度,那么在要恢复目标交易请求的当前并发数时,可经第二预设时间,可进一步验证目标交易请求的第三响应时间是否小于预设警戒时间,若是,可以将该目标交易请求的当前并发数恢复至预设初始值,即系统最初对该目标交易请求预设的并发数量,可以是其预设的并发流控阈值,本申请对此不作具体限定;若否,将按照上述实例的监控方式继续对其当前并发数进行动态调整或在其当前并发数达到预设下限值时输出超时提示,拒绝本次交易请求等。其中,该第二预设时间可以是交易请求的并发数恢复时间,具体可根据当前并发数以及预设初始值的具体数值确定,本申请并不限定其具体数值。
综上所述,在本实施例中,通过对当前服务上正在处理的交易请求的第一响应时间进行监测,当存在第一响应时间超过预设警戒时间的交易请求,将该交易请求记录为目标交易请求,并减小该目标交易请求的当前并发数,当经第一预设时间,验证检测到的该目标交易请求的第二响应时间仍大于预设警戒时间,返回该减小该目标交易请求的当前并发数步骤,直至该目标交易请求的当前并发数达到其预设下限值。可见,本实施这种根据交易请求的响应时间的变化,动态调整该交易请求的当前并发数的方式,无需人工干预,也能够为当前服务中的其他正常交易请求预留一定的处理资源,使得其他正常交易请求能够快速得到处理,确保整个服务不会因此而瘫痪,使得客户拥有较好的体验。
如图2所示,为本申请提供的另一种监控方法实施例的流程示意图,该方法可以包括:
步骤S210:监测当前服务中正在处理的交易请求的第一响应时间。
步骤S220:判断当前服务中正在处理的交易请求中是否存在已被记录的目标交易请求,若是,进入步骤S270;若否,进入步骤S230。
在本实施例实际应用,可使用独立的线程对当前服务中正在处理的交易请求进行检测,并通过定时扫描这些线程的检测结果,从而达到监测当前服务中正在处理的交易请求的第一响应时间的目的,但并不局限于这一种实现方式。
其中,结合上述分析可知,对于响应时间超过预设警戒时间的交易请求,通常会在其对应的线程中进行记录,以便后续进一步验证该交易请求的响应时间是否小于预设警戒时间,所以,在对当前正在处理的交易请求进行监测过程中,可先判断这些正在处理的交易请求是否已被记录,在此,可将被记录的交易请求作为目标交易请求进行后续处理,
可选的,对于被记录的交易请求可以通过更改其标识来与其他交易请求进行区别,也可以通过将该交易请求存放在不同的其他未被记录的交易请求的存储位置的区域,等等,本申请对此不作限定。
步骤S230:验证正在处理的交易请求中是否存在第一响应时间大于预设警戒时间的交易请求,若是,进入步骤S240;若否,返回步骤S210。
其中,预设警戒时间可以是系统运行当前服务的交易请求的最长响应时间,一旦该交易请求的响应时间超过该预设警戒时间,系统还未完成对其的处理,将会因其占用并发资源而影响其他正常交易请求的处理,本实施例可按照下面方式对该交易请求的当前并发数进行动态调整,具体过程如下,本实施在此不再详述。
需要说明的是,对于不同交易请求可以预设对应的警戒时间,也可以设置统一的警戒时间,本身对此不作限定,且不限定该预设警戒时间的具体数值。
步骤S240:记录正在处理的交易请求中存在的第一响应时间大于预设警戒时间的交易请求,并将记录的该交易请求作为目标交易请求。
步骤S250:减小该目标交易请求的当前并发数。
可选的,对于当前的第一响应时间大于预设警戒时间的目标交易请求,可以将其当前并发数减1,但并不局限于此,可根据系统的非功能测试来调整。
作为本申请又一实施例,若该目标交易请求已被记录,通常在执行步骤 S250之前,可以先验证其当前并发数是否达到预设下限值,若达到,将不再减少其当前并发数,若未达到,再执行步骤S250。而对于未被记录的第一响应时间超过预设警戒时间的交易请求,可以直接按照规则减小其当前并发数,之后再验证其当前并发数(即减小后的并发数)是否达到其预设下限值,即执行步骤S260。
步骤S260:验证该目标交易请求的当前并发数是否达到其预设下限值,若是,执行步骤S270;若否,返回步骤S210。
其中,本申请对该预设下限值的具体数值不作限定,其可以与不同交易请求一一对应,也可以是预设的统一数值。
步骤S270:经第三预设时间,验证检测到的该目标交易请求的第三响应时间是否小于其预设警戒时间,若是,进入步骤S280;若否,执行步骤S290。
在本实施例实际应用中,在对目标交易请求的当前并发数进行动态调整过程中,若其当前并发数小于其预设下限值,可以开始恢复其当前并发数,由于经过上述调整后,针对该交易再次发起的交易请求的响应时间会发生变化,这样,经该第三预设时间后,再验证该目标交易请求的响应时间可能会小于其预设警戒时间,从而保证当前服务的其他正常交易能够得到及时处理。
其中,该第三预设时间可以是交易请求的并发数恢复时间,但并不局限于此。
步骤S280:将目标交易请求的当前并发数恢复至预设初始值,并删除对该目标交易请求的记录。
在本实施例中,经上述调整后使得响应时间异常的交易请求恢复正常,此时,为了充分利用当前服务的可用资源,可以将该目标交易请求的并发数恢复至预设初始值,具体可以将该目标交易请求的当前并发数一次性增加至预设初始值;同时,为了对下一周期的监测造成干扰,可以删除对响应时间已经恢复的目标交易请求的记录。
步骤S290:输出超时提示信息。
综上,本实施例通过对当前服务上正在处理的交易请求的第一响应时间进行监测,当这些正在处理的交易请求未被记录时,将存在的第一响应时间超过预设警戒时间的交易请求作为目标交易请求,并减小该目标交易请求的当前并发数,此时验证该目标交易请求的当前并发数小于预设下限值后,将进一步验证经过该调整后目标交易请求的第三响应时间是否小于预设警戒时间,若小于,将该目标交易请求的并发数恢复至预设初始值;而监测到的被记录的目标交易请求,可直接验证其当前响应时间是否小于预设警戒时间,并在小于该预设警戒时间时,将其当前并发数恢复至预设初始值。可见,本实施采用这种根据交易请求的响应时间的变化,动态调整该交易请求的当前并发数的方式,为当前服务中的其他正常交易请求预留一定的处理资源,使得其他正常交易请求能够快速得到处理,确保整个服务不会因此而瘫痪,使得客户拥有较好的体验,且无需人工干预,大大降低了工作人员的工作量,且避免了因人工干预而造成的误检漏检等情况,大大提高了对系统各服务的交易情况的监控准确度。
如图3所示,为本申请提供的一种监控系统实施例的结构示意图,该系统可以包括:
监测模块310,用于监测当前服务中正在处理的交易请求的第一响应时间。
可选的,本实施实际应用中,可以使用独立线程每隔第一预设时间对当前服务中正在处理的交易请求进行一次检查,但并不局限于此。
具体的,该监测模块310可以包括:检测单元,用于每隔第一预设时间,检测当前服务中正在处理的对应的交易请求的第一响应时间。
其中,该检测单元可以是独立的线程,则本实施例将通过独立的线程每隔第一预设时间对当前服务中正常处理的交易请求的响应时间检测一次,此时,该第一预设时间可以是对该线程定时扫描的休眠时间间隔,也就是说,本申请可以通过定时扫描线程的方式获得检测到的正在处理的交易请求的响应时间,但并不局限于此。
另外,结合上述分析,对于第一响应时间大于预设警戒时间的交易请求,本申请可通过记录模块记录该第一响应时间大于预设警戒时间的交易请求,以便在下次监测时,对记录的交易请求进行针对性的验证,从而提高监控效率。
基于此,作为本申请另一实施例,该系统还可以包括:
记录模块,用于记录所述第一响应时间大于预设警戒时间的交易请求。
判断模块,用于判断当前服务中正在处理的交易请求中是否存在已被记录的交易请求。
调整模块320,用于将所述正在处理的交易请求中存在的所述第一响应时间大于预设警戒时间的交易请求作为目标交易请求,并减小所述目标交易请求的当前并发数。
在本实施例实际应用中,若当前服务中正在处理的交易请求都未曾被记录,可以直接利用该调整模块320对确定的目标交易请求的当前并发数进行调整;若当前服务中正在处理的交易请求中存在曾被记录的交易请求,可以直接验证该被记录的交易请求的当前响应时间是否小于预设警戒时间,若是,可以直接触发系统中的恢复模块将其当前并发数恢复至预设初始值。
其中,该调整模块320在减小目标交易请求的当前并发数时,可以直接将目标交易的当前并发数减1,但并不局限于此。
可选的,在上述实施例的基础上,该系统还可以包括:
第三验证模块,用于验证经调整模块320调整后的目标交易请求的当前并发数是否小于预设下限值,若是,可进一步由第二验证模块,验证该目标交易的第三响应时间是否小于预设警戒时间,以便在其小于预设警戒时间时,由恢复模块将其当前并发数恢复至预设初始值,并删除对该目标交易请求的记录。
第一验证模块340,用于经第一预设时间,验证检测到的所述目标交易请求的第二响应时间仍大于所述预设警戒时间时,触发所述调整模块直至所述目标交易请求的当前并发数减小至所述目标交易请求的预设下限值。
其中,该第一预设时间可以是对线程定时扫描的休眠时间间隔,也就是说,系统可以每隔第一预设时间将再次监测此时当前服务中正在处理的交易请求的响应时间,以便据此判断之前对目标交易请求的并发数的调整是否有效。
可选的,基于上述分析,如图4所示,该系统还可以包括:
第二验证模块340,用于验证该目标交易的第三响应时间是否小于预设警戒时间。
恢复模块350,用于在第二验证模块340的验证结果为是时,将目标交易请求的当前并发数恢复至预设初始值。
综上所述,本实施例通过对当前服务中正在处理的交易请求的第一响应时间进行监测,将存在的第一响应时间超过预设警戒时间的交易请求作为目标交易请求,并减小该目标交易请求的当前并发数,当经第一预设时间,验证检测到的该目标交易请求的第二响应时间仍大于预设警戒时间,返回该减小该目标交易请求的当前并发数步骤,直至该目标交易请求的当前并发数达到其预设下限值。可见,本实施这种根据交易请求的响应时间的变化,动态调整该交易请求的当前并发数的方式,无需人工干预,也能够为当前服务中的其他正常交易请求预留一定的处理资源,使得其他正常交易请求能够快速得到处理,确保整个服务不会因此而瘫痪,使得客户拥有较好的体验。
另外,需要说明的是,关于上述各实施例中,诸如第一、第二等之类的关系术语仅仅用来将一个操作、单元或模块与另一个操作、单元或模块区分开来,而不一定要求或者暗示这些单元、操作或模块之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法或者系统中还存在另外的相同要素。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和特点相一致的最宽的范围。

Claims (5)

1.一种监控方法,其特征在于,所述方法包括:
监测当前服务中正在处理的交易请求的第一响应时间,并验证所述正在处理的交易请求中是否存在第一响应时间大于预设警戒时间的交易请求;
将所述正在处理的交易请求中存在的所述第一响应时间大于预设警戒时间的交易请求作为目标交易请求,并减小所述目标交易请求的当前并发数;所述监测当前服务中正在处理的交易请求的第一响应时间包括:每隔第一预设时间,通过独立的线程检测当前服务中正在处理的交易请求的第一响应时间;所述第一预设时间为对对应线程定时扫描的休眠时间间隔;
经第一预设时间,验证检测到的所述目标交易请求的第二响应时间仍大于所述预设警戒时间时,返回所述减小所述目标交易请求的当前并发数步骤,直至所述目标交易请求的当前并发数减小至所述目标交易请求的预设下限值;
当所述正在处理的交易请求中存在所述第一响应时间大于预设警戒时间的交易请求时,所述方法还包括:
记录所述第一响应时间大于预设警戒时间的交易请求;
在监测当前服务中正在处理的交易请求的第一响应时间过程中,所述方法还包括:
判断当前服务中正在处理的交易请求中是否存在已被记录的交易请求。
2.根据权利要求1所述的方法,其特征在于,在所述减小所述目标交易请求的当前并发数之后,所述方法还包括:
经第二预设时间,验证所述目标交易请求的第三响应时间是否小于所述预设警戒时间;
当所述目标交易请求的第三响应时间小于所述预设警戒时间时,恢复所述目标交易请求的当前并发数至预设初始值。
3.根据权利要求1或2所述的方法,其特征在于,所述减小所述目标交易请求的当前并发数具体为:
将所述目标交易请求的当前并发数减1。
4.一种监控系统,其特征在于,所述系统包括:
监测模块,用于监测当前服务中正在处理的交易请求的第一响应时间;
调整模块,用于将所述正在处理的交易请求中存在的所述第一响应时间大于预设警戒时间的交易请求作为目标交易请求,并减小所述目标交易请求的当前并发数;
第一验证模块,用于经第一预设时间,验证检测到的所述目标交易请求的第二响应时间仍大于所述预设警戒时间时,触发所述调整模块直至所述目标交易请求的当前并发数减小至所述目标交易请求的预设下限值;
还包括:记录模块,用于记录所述第一响应时间大于预设警戒时间的交易请求;
判断模块,用于判断当前服务中正在处理的交易请求中是否存在已被记录的交易请求;
检测单元,用于每隔第一预设时间,通过独立的线程检测当前服务中正在处理的交易请求的第一响应时间;所述第一预设时间为对对应线程定时扫描的休眠时间间隔。
5.根据权利要求4所述的系统,其特征在于,所述系统还包括:
第二验证模块,经第二预设时间,验证所述目标交易请求的第三响应时间是否小于所述预设警戒时间;
恢复模块,用于当所述第二验证模块的验证结果为是时,恢复所述目标交易请求的当前并发数至预设初始值。
CN201510763531.0A 2015-11-10 2015-11-10 一种监控方法及系统 Active CN105389214B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510763531.0A CN105389214B (zh) 2015-11-10 2015-11-10 一种监控方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510763531.0A CN105389214B (zh) 2015-11-10 2015-11-10 一种监控方法及系统

Publications (2)

Publication Number Publication Date
CN105389214A CN105389214A (zh) 2016-03-09
CN105389214B true CN105389214B (zh) 2019-03-29

Family

ID=55421521

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510763531.0A Active CN105389214B (zh) 2015-11-10 2015-11-10 一种监控方法及系统

Country Status (1)

Country Link
CN (1) CN105389214B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107454004A (zh) * 2016-05-30 2017-12-08 阿里巴巴集团控股有限公司 一种流量控制方法和装置
CN108111433A (zh) * 2016-11-25 2018-06-01 阿里巴巴集团控股有限公司 一种业务动态流控方法、装置以及电子设备
CN108156091A (zh) * 2016-12-02 2018-06-12 阿里巴巴集团控股有限公司 一种流量控制方法及系统
CN107172036B (zh) * 2017-05-11 2020-05-05 北京安赛创想科技有限公司 一种网络扫描控制方法及装置
CN107239973B (zh) * 2017-06-06 2020-07-28 睿智合创(北京)科技有限公司 一种系统监控预警的方法
CN108011840A (zh) * 2017-12-07 2018-05-08 中国银行股份有限公司 交易请求的控制方法、服务器和系统
CN108804035A (zh) * 2018-05-22 2018-11-13 深圳忆联信息系统有限公司 降低io延时的方法、装置、计算机设备及存储介质
CN109246077B (zh) * 2018-08-01 2021-06-29 广州唯品会信息科技有限公司 分布式并发交易校验方法、装置和计算机存储介质
CN112422440B (zh) * 2019-08-22 2023-03-24 腾讯科技(深圳)有限公司 一种应用于服务器的流量控制方法以及相关装置
CN110784478B (zh) * 2019-10-31 2024-04-30 深圳前海微众银行股份有限公司 超时时长的调整方法、装置、设备及计算机可读存储介质
CN111461864A (zh) * 2020-03-31 2020-07-28 中国银行股份有限公司 交易处理方法及装置
CN111782468B (zh) * 2020-06-29 2024-02-27 中国工商银行股份有限公司 一种Web前端性能的监测方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101000563A (zh) * 2006-12-30 2007-07-18 中国建设银行股份有限公司 一种自适应拥塞控制方法和装置
JP2009217295A (ja) * 2008-03-06 2009-09-24 Nomura Research Institute Ltd 為替取引支援装置
WO2011083941A2 (ko) * 2010-01-07 2011-07-14 주식회사 유비온 온라인 테스트 평가 관리 시스템 및 방법
CN104090823A (zh) * 2014-06-09 2014-10-08 中国建设银行股份有限公司 一种用于计算机系统的流量控制方法和装置
CN104408656A (zh) * 2014-10-29 2015-03-11 中国建设银行股份有限公司 动态调整流控阈值的方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101000563A (zh) * 2006-12-30 2007-07-18 中国建设银行股份有限公司 一种自适应拥塞控制方法和装置
JP2009217295A (ja) * 2008-03-06 2009-09-24 Nomura Research Institute Ltd 為替取引支援装置
WO2011083941A2 (ko) * 2010-01-07 2011-07-14 주식회사 유비온 온라인 테스트 평가 관리 시스템 및 방법
CN104090823A (zh) * 2014-06-09 2014-10-08 中国建设银行股份有限公司 一种用于计算机系统的流量控制方法和装置
CN104408656A (zh) * 2014-10-29 2015-03-11 中国建设银行股份有限公司 动态调整流控阈值的方法及系统

Also Published As

Publication number Publication date
CN105389214A (zh) 2016-03-09

Similar Documents

Publication Publication Date Title
CN105389214B (zh) 一种监控方法及系统
US9940177B2 (en) Traffic control method and system
US10521235B1 (en) Determining problem dependencies in application dependency discovery, reporting, and management tool
US10929278B2 (en) Intelligent services for application dependency discovery, reporting, and management tool
CN107864071B (zh) 一种面向主动安全的数据动态采集方法、装置及系统
CN109586952B (zh) 服务器扩容方法、装置
US11650909B2 (en) Intelligent services and training agent for application dependency discovery, reporting, and management tool
US7937690B2 (en) Evaluating performance of software application
US7206845B2 (en) Method, system and program product for monitoring and controlling access to a computer system resource
CN110430071A (zh) 业务节点故障自愈方法、装置、计算机设备及存储介质
US20130086431A1 (en) Multiple modeling paradigm for predictive analytics
KR100897849B1 (ko) 비정상 프로세스 탐지 방법 및 장치
CN106385341B (zh) 客户端监控线程的方法及其系统
US20230267074A1 (en) Testing agent for application dependency discovery, reporting, and management tool
JP2017509952A5 (zh)
CN107172122A (zh) 一种异常处理方法及装置
CN110674149B (zh) 业务数据处理方法、装置、计算机设备和存储介质
CN110191016B (zh) 云平台业务监控方法、装置、设备、系统及可读存储介质
KR102372958B1 (ko) 멀티 클라우드 환경에서 애플리케이션 성능 모니터링 방법 및 장치
CN115632706B (zh) 一种fc链路管理方法、装置、设备及可读存储介质
JP7038629B2 (ja) 機器状態監視装置及びプログラム
CN111104289A (zh) 一种gpu集群的效率检查系统及方法
CN110750425A (zh) 数据库监控方法、装置、系统和存储介质
CN115186249A (zh) 多设备同时登录的管理方法、系统、电子设备及存储介质
CN103944927A (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
GR01 Patent grant
GR01 Patent grant