CN107204875B - 数据上报链路监测方法、装置、电子设备及存储介质 - Google Patents

数据上报链路监测方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN107204875B
CN107204875B CN201710329500.3A CN201710329500A CN107204875B CN 107204875 B CN107204875 B CN 107204875B CN 201710329500 A CN201710329500 A CN 201710329500A CN 107204875 B CN107204875 B CN 107204875B
Authority
CN
China
Prior art keywords
server
request
amount
shielding
preset
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
CN201710329500.3A
Other languages
English (en)
Other versions
CN107204875A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201710329500.3A priority Critical patent/CN107204875B/zh
Publication of CN107204875A publication Critical patent/CN107204875A/zh
Application granted granted Critical
Publication of CN107204875B publication Critical patent/CN107204875B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/142Network analysis or design using statistical or mathematical methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Debugging And Monitoring (AREA)
  • Hardware Redundancy (AREA)

Abstract

本公开是关于一种数据上报链路监测方法及装置。该方法包括:在发送请求消息时按照预定选择规则从第一服务器集合中选取第一服务器,所述第一服务器集合为屏蔽服务器集合在总服务器集合中的补集;请求与第一服务器建立通信链路,并对第一服务器的请求失败量进行统计;在请求失败量超过预设值时,将第一服务器加入屏蔽服务器集合;以及在请求建立通信链路成功时对请求失败量进行清零。本公开能够自动地屏蔽处于异常状态的服务器,在服务器恢复正常时自动解除服务器的屏蔽状态,提高了生产端的数据发送性能和效率。

Description

数据上报链路监测方法、装置、电子设备及存储介质
技术领域
本公开涉及大数据领域,具体而言,涉及一种数据上报链路监测方法、数据上报链路监测装置、电子设备以及计算机可读存储介质。
背景技术
随着互联网的发展,需要处理的数据量呈几何级数的增长,如何高效地对海量数据进行处理越来越成为大数据技术领域关注的焦点。
一种现有的海量数据处理技术方案采用数据由生产端Producer即实时数据生产客户端上报到存储服务器Broker的上报模型:如图1所示,生产端Producer负责向存储服务器的数据上报工作,生产端Producer定期从配置***获知不同数据对应的存储服务器列表,在数据发送时,生产端Producer会检查数据与存储服务器的映射关系表,按照一定的算法如轮循算法从与数据具有映射关系的服务器集合中选取一个服务器进行数据发送,发送前生产端Producer检查是否存在到该数据存储服务器的链接,如果不存在则建立数据链路,然后进行实际的数据发送处理。
然而,该数据上报模型会存在以下问题:一方面,在服务器出现故障时,生产端不能及时知晓服务器出现了故障,会因频繁的重试与服务器建立数据链路而影响到生产端的数据发送效率和性能;另一方面,服务器运行中可能出现数据处理能力下降,如机器负载过重,硬盘故障等异常情况,会降低与其进行通信的生产端的数据发送效率和性能。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种数据上报链路监测方法以及数据上报链路监测装置,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或者多个问题。
根据本公开的一个方面,提供了一种数据上报链路监测方法,其特征在于,包括:
在发送请求消息时按照预定选择规则从第一服务器集合中选取第一服务器,所述第一服务器集合为屏蔽服务器集合在总服务器集合中的补集;
请求与所述第一服务器建立通信链路,并对所述第一服务器的请求失败量进行统计;
在所述请求失败量超过预设值时,将所述第一服务器加入所述屏蔽服务器集合;以及
在请求建立通信链路成功时对所述请求失败量进行清零。
根据本公开的一个方面,提供了一种数据上报链路监测装置,包括:
选取单元,用于在发送请求消息时按照预定选择规则从第一服务器集合中选取第一服务器,所述第一服务器集合为屏蔽服务器集合在总服务器集合中的补集;
统计单元,用于请求与所述第一服务器建立通信链路,并对所述第一服务器的请求失败量进行统计;
链接失败处理单元,用于在所述请求失败量超过预设值时,将所述第一服务器加入所述屏蔽服务器集合;以及
链接成功处理单元,在请求建立通信链路成功时对所述请求失败量进行清零。
根据本公开的一个方面,提供了一种电子设备,包括:
处理器;以及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现上述数据上报链路监测方法。
根据本公开的一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述数据上报链路监测方法。
根据本示例实施例中的数据上报链路监测方法及装置,按照预定选择规则从处于正常状态的服务器集合中选取服务器,将请求失败量超过预设值的服务器加入屏蔽服务器集合,在请求建立通信链路成功时将请求失败量清零。一方面,按照预定选择规则从处于正常状态的服务器集合中选取服务器,与现有技术相比,能够显著减少向处于异常状态的服务器上报数据的情况,从而提高了生产端的数据发送效率和性能;另一方面,将请求失败量超过预设值的服务器加入屏蔽服务器集合,能够自动地屏蔽处于异常状态的服务器;再一方面,在请求建立通信链路成功时将请求失败量清零,能够在服务器恢复正常时自动解除服务器的屏蔽状态,不仅处理简单而且处理效率高。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
通过参照附图来详细描述其示例实施例,本公开的上述和其它特征及优点将变得更加明显。
图1示意性示出了一种技术方案中的数据上报方法的示意框图;
图2示意性示出了根据本公开一示例性实施例的数据上报链路监测方法的流程图;
图3示意性示出了根据本公开一示例性实施例的数据上报链路监测方法的生产端与服务器的交互图;
图4示意性示出了根据本公开另一示例性实施例的数据上报链路监测方法的生产端与服务器的交互图;
图5示意性示出了根据本公开一示例性实施例的数据上报链路监测装置的框图;
图6示意性示出了根据本公开一示例性实施例的电子设备的框图;以及
图7示意性示出了根据本公开一示例性实施例的计算机可读存储介质的示意图。
具体实施方式
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本公开将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有所述特定细节中的一个或更多,或者可以采用其它的方法、组元、材料、装置、步骤等。在其它情况下,不详细示出或描述公知结构、方法、装置、实现、材料或者操作以避免模糊本公开的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个软件硬化的模块中实现这些功能实体或功能实体的一部分,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
在一种采用数据由生产端Producer上报到存储服务器Broker的上报模型的技术方案中,为了维持生产端的数据发送效率和性能,生产端Producer会在本地为每个链接设置一个消息缓冲队列,缓存收到的待发送数据包,在链接可用时进行消息的批量发送,以提高生成端的数据发送性能和性能;同时,在数据发送完毕后会维持一定时间的链接,以避免重复建立链接带来性能损耗,还通过设置缓冲区大小避免内存积压以提高性能。然而,该技术方案中同样存在着生产端不能知晓服务器出现异常的情况。
为解决生产端不能知晓服务器出现异常情况的问题,一种技术方案中采取对链接异常的服务器进行屏蔽,另一种技术方案根据服务器对请求响应的处理速度来判断服务器是否存在异常。然而,在实际的使用中,在海量上报数据的前提下,这些技术方案存在过于限制***性能,而且还存在屏蔽不能自动解除、异常检测成本过高等问题,从而不能很好地发挥***性能,并在服务器出现异常时不能快速发现以及解决性能和效率降低的问题。
基于上述内容,本示例实施例中,首先提供了一种数据上报链路监测方法,可以应用于数据上报***中的生产端Producer。参考图2中所示,该数据上报链路监测方法可以包括以下步骤:
步骤S210.在发送请求消息时按照预定选择规则从第一服务器集合中选取第一服务器,所述第一服务器集合为屏蔽服务器集合在总服务器集合中的补集;
步骤S220.请求与所述第一服务器建立通信链路,并对所述第一服务器的请求失败量进行统计;
步骤S230.在所述请求失败量超过预设值时,将所述第一服务器加入所述屏蔽服务器集合;以及
步骤S240.在请求建立通信链路成功时对所述请求失败量进行清零。
根据本示例实施例中的数据上报链路监测方法,一方面,按照预定选择规则从处于正常状态的服务器集合中选取服务器,与现有技术相比,能够显著减少向处于异常状态的服务器上报数据的情况,从而提高了生产端的数据发送效率和性能;另一方面,将请求失败量超过预设值的服务器加入屏蔽服务器集合,能够自动地屏蔽处于异常状态的服务器;再一方面,在请求建立通信链路成功时将请求失败量清零,能够在服务器恢复正常时自动解除服务器的屏蔽状态,不仅处理简单而且处理效率高。
下面,将对本示例实施例中的数据上报链路监测方法进行进一步的说明。
在步骤S210中,在发送请求消息时按照预定选择规则从第一服务器集合中选取第一服务器,所述第一服务器集合为屏蔽服务器集合在总服务器集合中的补集。
在本示例实施例中,总服务器集合可以为分布式消息处理***Tube***的所有服务端Broker的集合。总服务器集合可以包括处于屏蔽状态的服务器的集合和处于正常状态的服务器的集合,处于正常状态的服务器的集合即为屏蔽服务器集合在总服务器集合中的补集,因此,第一服务器集合可以为处于正常状态的服务器的集合。
参照图3所示,在需要进行数据上报时,首先由数据生产端Producer向服务器Broker发送请求消息即步骤S1。在发送请求消息时,为了提高生产端Producer的数据发送性能,可以仅向消息处理能力处于正常状态的服务器发送请求消息。因此,在本示例实施例中,可以将消息处理能力较差的服务器或处于异常状态即负载过重或出现故障的服务器列入屏蔽服务器集合。然后,在进行请求消息发送时,可以从总服务器集合中排除处于屏蔽状态的屏蔽服务器集合之后的集合中选取服务器,即从屏蔽服务器集合在总服务器集合中的补集中选取服务器。此外,如果屏蔽服务器集合在总服务器集合中的补集为空,则拒绝发送请求消息,否则按照预定选择规则从屏蔽服务器集合在总服务器集合中的补集中选取服务器。
在本示例实施例中,预定选择规则可以为顺序选择、二分选择以及索引选择等,但是本公开的示例实施例中的预定选择规则不限于此,例如预定选择规则还可以为哈希表选择以及树表选择等,这同样在本公开的保护范围内。
进一步地,在本示例实施例中,为了进一步地提高生产端的数据发送性能和效率,在发送请求消息时,参照图3所示,在步骤S1中,可以判断对所述总服务器集合中的各服务器的总响应消息等待量totalRspWaitCont是否超过预设数量,在判定所述总响应消息等待量超过所述预设数量时,拒绝发送所述请求消息,以避免在多个服务器出现异常时生产端发送过多的无效的请求消息。在判定总响应消息等待量未超过所述预设数量时,按照上述预定选择规则从屏蔽服务器集合在总服务器集合中的补集中选取服务器。在本示例实施例中,总响应消息等待量totalRspWaitCont可以为生产端未收到响应的所有外发的请求总量。
此外,在本示例实施例中,为了对生产端与服务器之间的通信链路更好地进行监测,参照图3所示,在步骤S1中,在按照预定选择规则从第一服务器集合中选取第一服务器还可以包括:对所述总响应消息等待量、第一服务器的响应消息等待量itemRspWaitCnt以及第一服务器的请求发送量itemReqSentCnt进行统计,其中,服务器的响应消息等待量itemRspWaitCnt可以为生产端向某一服务器外发请求但是还没有收到该服务器返回的响应的请求总量。服务器的请求发送量itemReqSentCnt可以为预定时间内生产端向某一服务器外发的请求量。
在本示例实施例中,预定时间可以为单位时间例如1s,也可以为2s或根据服务器和生产端的处理性能确定的其他适当的时间段,本公开对此不进行特殊限定。
进一步地,在本示例实施例中,对总响应消息等待量、第一服务器的响应消息等待量以及第一服务器的请求发送量进行统计可以包括:增加总响应消息等待量、第一服务器的响应消息等待量以及第一服务器的请求发送量,例如将总响应消息等待量、第一服务器的响应消息等待量以及第一服务器的请求发送量各累加计数1。
此外,为了对服务器是否处于异常状态进行监测,在从所述第一服务器集合中选取所述第一服务器之后还可以包括:判断是否需要统计第一服务器对所述请求消息的请求响应检测时长itemCheckReqRspDur;在判定需要统计所述请求响应检测时长时记录所述请求消息的发送时间。在本示例实施例中,服务器的请求响应检测时长itemCheckReqRspDur可以为生产端向某一服务器发送检测请求到收到成功响应消息的时耗。
需要说明的是,在本示例实施例中,生产端Producer可以为单机模式,也可以集群模式,本公开对此不进行特殊限定,服务器Broker可以为集群模式部署。
接下来,在步骤S220中,请求与所述第一服务器建立通信链路,并对所述第一服务器的请求失败量进行统计。
在本示例实施例中,参照图3所示,在选取了要进行数据发送的服务器之后,可以请求与第一服务器建立通信链路即步骤S2。为了简单高效地对服务器是否处于异常状态进行监测,在步骤S2中建立通信链路时,可以对请求失败量itemConnFail进行统计,服务器的请求失败量itemConnFail可以为预定时间内生产端向某一服务器请求建立通信链路失败的次数。
进一步地,对请求失败量进行统计可以包括:将请求失败量初始化为0,在与第一服务器建立通信链路时,如果建立通信链路失败,则累加请求失败量例如累加计数1,并再次请求与第一服务器建立通信链路。
接下来,在步骤S230中,在所述请求失败量超过预设值时,将所述第一服务器加入所述屏蔽服务器集合。
在本示例实施例中,该预设值为根据生产端和服务器的处理性能设定的值,可以随着生成端和/或服务器的处理性能的改变而改变。此外,该预设值还可以根据应用该数据上报链路监测方法之后根据处理结果统计得出,这同样在本公开的保护范围内。
在示例实施例中,在请求失败量超过预设值时,可以将第一服务器加入屏蔽服务器集合。被加入屏蔽服务器集合的服务器处于屏蔽状态,后续生产端再请求建立通信链路时就不会选中处于屏蔽服务器集合中的服务器,与现有技术相比,能够显著减少向处于异常状态的服务器发送请求和上报数据的情况,从而提高了生产端的数据发送效率和性能。
接下来,在步骤S240中,在请求建立通信链路成功时对所述请求失败量进行清零。
在本示例实施例中,在请求与第一服务器建立通信链路成功时,对第一服务器的请求失败量进行清零。此外,在本示例实施例中,还可以定时对屏蔽服务器集合中的各服务器按照一定频率发送请求消息,请求与屏蔽服务器集合中的各服务器建立通信链路,对成功建立通信链路的服务器的请求失败量进行清零,在成功建立通信链路的服务器的请求失败量被清零后,可以解除该服务器的屏蔽状态,即将该服务器从屏蔽服务器集合中取出。因此,本示例实施例能够根据服务器的请求失败量来自动地解除对处于屏蔽状态的服务器的屏蔽,恢复与该服务器的通信链路上的数据上报处理。
此外,在本示例实施例中,为了更好地对生产端与服务器之间的通信链路进行监测,参照图3所示,在步骤S3中,在接收到从第一服务器返回的对请求建立通信链路消息的响应消息时,可以减少总响应消息等待量以及第一服务器的响应消息等待量,例如将总响应消息等待量以及第一服务器的响应消息等待量减1。而且,在所述响应消息为成功响应消息时,还可以增加第一服务器的成功响应量itemSuccRspCnt,例如将第一服务器的成功响应量加1。在本示例实施例中,服务器的成功响应量itemSuccRspCnt可以为预定时间内生产端从某一服务器收到的外发请求成功响应量。
进一步地,在本示例实施例中,为了通过服务器对请求消息的处理时长来对服务器是否处于异常状态进行监测,该数据上报链路监测方法还可以包括:在接收到从第一服务器返回的响应消息时,对需要计算请求响应检测时长的请求计算第一服务器的请求响应检测时长,以及将计算结果的值赋给第一服务器的请求响应检测时长itemCheckReqRspDur。在本示例实施例中,可以根据请求消息的发送时间和接收到从服务器返回的与所述请求消息对应的响应消息的时间来计算请求响应检测时长,例如请求响应检测时长可以为请求消息的发送时间与接收到与请求消息对应的响应消息的时间之差。
具体而言,在本示例实施例中,为了通过服务器对请求消息的处理时长来对服务器是否处于异常状态进行监测,参照图4所示,可以启动新线程定期检测生产端与服务器之间建立的通信链路的质量,举例而言,可以获取预定时间内各服务器的请求响应检测时长;然后按照正态分布将请求响应检测时长在预定范围外并且请求响应检测时长均值最大的服务器加入屏蔽服务器集合。例如,设正态分布为N(μ,σ2),μ为统计得出的服务器的请求响应检测时长的均值,σ2为统计得出的服务器的请求响应检测时长的方差,则请求响应检测时长的预定范围可以为(μ-σ,μ+σ)、(μ-2σ,μ+2σ)或(μ-3σ,μ+3σ),也可以为其他适当的范围,本公开对此不进行特殊限定。可以将请求响应检测时长在上述预定范围(μ-σ,μ+σ)、(μ-2σ,μ+2σ)或(μ-3σ,μ+3σ)外,并且请求响应检测时长均值最大的服务器加入屏蔽服务器集合。
此外,在本示例实施例中,还可以通过其他方式对服务器是否处于异常状态进行监测。例如,可以通过各服务器的请求发送量与成功响应量的比率来监测服务器是否处于异常状态,因此,该数据上报链路监测方法还可以包括:计算预定时间内各服务器的请求发送量以及成功响应量;获得所述预定时间内各服务器的请求发送量与成功响应量的比率;将所述比率大于预定阈值的服务器加入屏蔽服务器集合。在本示例实施例中,预定阈值可以为根据生产端和服务器的处理性能设定的值,该预设值可以随着生成端和/或服务器的处理性能的改变而改变。
进一步地,在本示例实施例中,为了能够在屏蔽服务器集合中的服务器恢复正常后自动地将其从屏蔽服务器集合中取出,参照图4所示,可以启动新线程定期检测处于屏蔽状态的服务器,因此,该数据上报链路监测方法还可以包括:定时对所述屏蔽服务器集合中的各服务器进行检测;在检测到建立通信链路成功的服务器,或者请求响应检测时长均值符合所述正态分布的所述预定范围的服务器,或者请求发送量与成功响应量的比率小于所述预定阈值的服务器时,解除所述服务器的屏蔽状态。此外,定时对所述屏蔽服务器集合中的各服务器进行检测可以包括:定时对所述屏蔽服务器集合中的各服务器按照预定频率发送请求消息,并更新服务器异常检测量itemAbnormCheckReqCnt的值。服务器异常检测量itemAbnormCheckReqCnt可以为生产端Producer向某一屏蔽的服务器发送检测请求而收到的消息量。
需要说明的是,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
此外,在本示例实施例中,还提供了一种数据上报链路监测装置。参照图5所示,该数据上报链路监测装置500可以包括:选取单元510、统计单元520、链接失败处理单元530以及链接成功处理单元540。其中:
选取单元510用于在发送请求消息时按照预定选择规则从第一服务器集合中选取第一服务器,所述第一服务器集合为屏蔽服务器集合在总服务器集合中的补集;
统计单元520用于请求与所述第一服务器建立通信链路,并对所述第一服务器的请求失败量进行统计;
链接失败处理单元530用于在所述请求失败量超过预设值时,将所述第一服务器加入所述屏蔽服务器集合;以及
链接成功处理单元540用于在请求建立通信链路成功时对所述请求失败量进行清零。
进一步地,在本示例实施例中,在发送请求消息时按照预定选择规则从第一服务器集合中选取第一服务器可以包括:
在发送请求消息时判断对所述总服务器集合中的各服务器的总响应消息等待量是否超过预设数量;
在判定所述总响应消息等待量超过所述预设数量时,拒绝发送所述请求消息;
在判定所述总响应消息等待量未超过所述预设数量时,按照预定选择规则从所述第一服务器集合中选取所述第一服务器。
进一步地,在本示例实施例中,在从所述第一服务器集合中选取所述第一服务器之后还可以包括:
对所述总响应消息等待量、所述第一服务器的响应消息等待量以及所述第一服务器的请求发送量进行统计。
进一步地,在本示例实施例中,在从所述第一服务器集合中选取所述第一服务器之后还可以包括:
判断是否需要统计所述第一服务器对所述请求消息的请求响应检测时长;
在判定需要统计所述请求响应检测时长时记录所述请求消息的发送时间。
此外,在本示例实施例中,所述数据上报链路监测装置500还可以包括:
第一接收处理单元,用于在接收到从所述第一服务器返回的对所述请求消息的响应消息时,减少所述总响应消息等待量以及所述第一服务器的响应消息等待量。
此外,在本示例实施例中,所述数据上报链路监测装置500还可以包括:
第二接收处理单元,用于在所述响应消息为成功响应消息时,增加所述第一服务器的成功响应量。
此外,在本示例实施例中,所述数据上报链路监测装置500还可以包括:
第三接收处理单元,用于在接收到从所述第一服务器返回的对所述请求消息的响应消息时,判断是否需要统计所述第一服务器对所述请求消息的所述请求响应检测时长;在判定需要统计请求响应检测时长时,根据所述请求消息的发送时间和接收到所述响应消息的时间计算所述第一服务器的请求响应检测时长。
此外,在本示例实施例中,所述数据上报链路监测装置500还可以包括:
计算单元,用于计算预定时间内各服务器的请求发送量以及成功响应量;
比率获取单元,用于获得所述预定时间内各服务器的请求发送量与成功响应量的比率;
第一加入单元,用于将所述比率大于预定阈值的服务器加入所述屏蔽服务器集合。
此外,在本示例实施例中,所述数据上报链路监测装置还可以包括:
时长获取单元,用于获取所述预定时间内各服务器的请求响应检测时长;
第二加入单元,用于按照正态分布将所述请求响应检测时长在预定范围外并且请求响应检测时长均值最大的服务器加入所述屏蔽服务器集合。
此外,在本示例实施例中,所述数据上报链路监测装置还可以包括:
检测单元,用于定时对所述屏蔽服务器集合中的各服务器进行检测;
屏蔽解除单元,用于在检测到建立通信链路成功的服务器,或者请求响应检测时长均值符合所述正态分布的所述预定范围的服务器,或者请求发送量与成功响应量的比率小于所述预定阈值的服务器时,解除所述服务器的屏蔽状态。
进一步地,在本示例实施例中,定时对所述屏蔽服务器集合中的各服务器进行检测可以包括:
定时对所述屏蔽服务器集合中的各服务器按照预定频率发送请求消息,并更新服务器异常检测量的值。
由于本公开的示例实施例的数据上报链路监测装置500的各个功能模块与上述数据上报链路监测方法的示例实施例的步骤对应,因此在此不再赘述。
应当注意,尽管在上文详细描述中提及了数据上报链路监测装置的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为***、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“***”。
下面参照图6来描述根据本发明的这种实施方式的电子设备600。图6显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图6所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:上述至少一个处理单元610、上述至少一个存储单元620、连接不同***组件(包括存储单元620和处理单元610)的总线630。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述示例***器状态获取方法中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图2中所示的步骤S210.在发送请求消息时按照预定选择规则从第一服务器集合中选取第一服务器,所述第一服务器集合为屏蔽服务器集合在总服务器集合中的补集;步骤S220.请求与所述第一服务器建立通信链路,并对所述第一服务器的请求失败量进行统计;步骤S230.在所述请求失败量超过预设值时,将所述第一服务器加入所述屏蔽服务器集合;以及步骤S240.在请求建立通信链路成功时对所述请求失败量进行清零。
存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、***总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备670(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器660通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储***等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例实施例中的数据上报链路监测方法”中描述的根据本发明各种示例性实施方式的步骤。
参考图7所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品700,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
此外,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (13)

1.一种数据上报链路监测方法,其特征在于,应用于需向服务器进行数据上报的生产端,包括:
在发送请求消息时按照预定选择规则从第一服务器集合中选取第一服务器,所述第一服务器集合为屏蔽服务器集合在总服务器集合中的补集;
请求与所述第一服务器建立通信链路;
在与第一服务器建立通信链路时,如果建立通信链路失败,则增加请求失败量,并再次请求与第一服务器建立通信链路,所述请求失败量为预定时间内生产端向所述第一服务器请求建立通信链路失败的次数;
在所述请求失败量超过预设值时,将所述第一服务器加入所述屏蔽服务器集合;
获取预定时间内各服务器的请求响应检测时长;
按照正态分布将所述请求响应检测时长在预定范围外并且请求响应检测时长均值最大的服务器加入所述屏蔽服务器集合;
在请求建立通信链路成功时对所述第一服务器的请求失败量进行清零;
在所述第一服务器的请求失败量被清零后,将所述第一服务器从屏蔽服务器集合中取出;
定时对所述屏蔽服务器集合中的各服务器进行检测,在所述第一服务器的请求响应检测时长的均值符合按照所述正态分布选取的所述预定范围时,将所述第一服务器从屏蔽服务器集合中取出。
2.根据权利要求1所述的数据上报链路监测方法,其特征在于,在发送请求消息时按照预定选择规则从第一服务器集合中选取第一服务器包括:
在发送请求消息时判断对所述总服务器集合中的各服务器的总响应消息等待量是否超过预设数量;
在判定所述总响应消息等待量超过所述预设数量时,拒绝发送所述请求消息;
在判定所述总响应消息等待量未超过所述预设数量时,按照预定选择规则从所述第一服务器集合中选取所述第一服务器。
3.根据权利要求2所述的数据上报链路监测方法,其特征在于,在从所述第一服务器集合中选取所述第一服务器之后还包括:
对所述总响应消息等待量、所述第一服务器的响应消息等待量以及所述第一服务器的请求发送量进行统计。
4.根据权利要求3所述的数据上报链路监测方法,其特征在于,在从所述第一服务器集合中选取所述第一服务器之后还包括:
判断是否需要统计所述第一服务器对所述请求消息的请求响应检测时长;
在判定需要统计所述请求响应检测时长时记录所述请求消息的发送时间。
5.根据权利要求3所述的数据上报链路监测方法,其特征在于,所述数据上报链路监测方法还包括:
在接收到从所述第一服务器返回的对所述请求消息的响应消息时,减少所述总响应消息等待量以及所述第一服务器的响应消息等待量。
6.根据权利要求5所述的数据上报链路监测方法,其特征在于,所述数据上报链路监测方法还包括:
在所述响应消息为成功响应消息时,增加所述第一服务器的成功响应量。
7.根据权利要求4所述的数据上报链路监测方法,其特征在于,所述数据上报链路监测方法还包括:
在接收到从所述第一服务器返回的对所述请求消息的响应消息时,判断是否需要统计所述第一服务器对所述请求消息的所述请求响应检测时长;
在判定需要统计请求响应检测时长时,根据所述请求消息的发送时间和接收到所述响应消息的时间计算所述第一服务器的请求响应检测时长。
8.根据权利要求1至7中任一项所述的数据上报链路监测方法,其特征在于,所述数据上报链路监测方法还包括:
计算预定时间内各服务器的请求发送量以及成功响应量;
获得所述预定时间内各服务器的请求发送量与成功响应量的比率;
将所述比率大于预定阈值的服务器加入所述屏蔽服务器集合。
9.根据权利要求8所述的数据上报链路监测方法,其特征在于,所述数据上报链路监测方法还包括:
定时对所述屏蔽服务器集合中的各服务器进行检测;
在检测到建立通信链路成功的服务器,或者请求响应检测时长均值符合所述正态分布的所述预定范围的服务器,或者请求发送量与成功响应量的比率小于所述预定阈值的服务器时,解除所述服务器的屏蔽状态。
10.根据权利要求9所述的数据上报链路监测方法,其特征在于,定时对所述屏蔽服务器集合中的各服务器进行检测包括:
定时对所述屏蔽服务器集合中的各服务器按照预定频率发送请求消息,并更新服务器异常检测量的值。
11.一种数据上报链路监测装置,其特征在于,应用于需向服务器进行数据上报的生产端,包括:
选取单元,用于在发送请求消息时按照预定选择规则从第一服务器集合中选取第一服务器,所述第一服务器集合为屏蔽服务器集合在总服务器集合中的补集;
统计单元,用于:
请求与所述第一服务器建立通信链路;
在与第一服务器建立通信链路时,如果建立通信链路失败,则增加请求失败量,并再次请求与第一服务器建立通信链路,所述请求失败量为预定时间内生产端向所述第一服务器请求建立通信链路失败的次数;
链接失败处理单元,用于在所述请求失败量超过预设值时,将所述第一服务器加入所述屏蔽服务器集合;
链接成功处理单元,用于在请求建立通信链路成功时对所述第一服务器的请求失败量进行清零;
时长获取单元,用于获取预定时间内各服务器的请求响应检测时长;以及
第二加入单元,用于按照正态分布将所述请求响应检测时长在预定范围外并且请求响应检测时长均值最大的服务器加入所述屏蔽服务器集合;
所述装置还用于:
在所述第一服务器的请求失败量被清零后,将所述第一服务器从屏蔽服务器集合中取出;
定时对所述屏蔽服务器集合中的各服务器进行检测,在所述第一服务器的请求响应检测时长的均值符合按照所述正态分布选取的所述预定范围时,将所述第一服务器从屏蔽服务器集合中取出。
12.一种电子设备,其特征在于,包括:
处理器;以及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现根据权利要求1至10中任一项所述的数据上报链路监测方法。
13.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现根据权利要求1至10中任一项所述的数据上报链路监测方法。
CN201710329500.3A 2017-05-11 2017-05-11 数据上报链路监测方法、装置、电子设备及存储介质 Active CN107204875B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710329500.3A CN107204875B (zh) 2017-05-11 2017-05-11 数据上报链路监测方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710329500.3A CN107204875B (zh) 2017-05-11 2017-05-11 数据上报链路监测方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN107204875A CN107204875A (zh) 2017-09-26
CN107204875B true CN107204875B (zh) 2022-08-23

Family

ID=59905806

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710329500.3A Active CN107204875B (zh) 2017-05-11 2017-05-11 数据上报链路监测方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN107204875B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108122129B (zh) * 2017-12-01 2022-02-22 上海子午线新荣科技有限公司 一种数据处理方法、装置及电子设备
CN109936613B (zh) * 2017-12-19 2021-11-05 北京京东尚科信息技术有限公司 应用于服务器的容灾方法和装置
CN108347350B (zh) * 2018-01-25 2022-04-15 ***股份有限公司 一种通信方法及装置
CN108551402B (zh) * 2018-04-09 2021-06-18 网易宝有限公司 信息发送方法及其***、介质和计算设备
CN108712489A (zh) * 2018-05-11 2018-10-26 中国平安人寿保险股份有限公司 一种网络链接的断路控制方法、装置及其可读存储介质
CN109474489B (zh) * 2018-11-02 2021-04-20 新华三信息安全技术有限公司 一种链路检测方法、装置及网络设备
CN113676365B (zh) * 2020-05-13 2022-10-11 北京达佳互联信息技术有限公司 一种访问请求的处理方法、装置及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102075380A (zh) * 2010-12-16 2011-05-25 中兴通讯股份有限公司 一种服务器状态检测方法及装置
CN103023938A (zh) * 2011-09-26 2013-04-03 阿里巴巴集团控股有限公司 一种服务器集群的服务能力控制方法和***
CN104065508A (zh) * 2014-06-23 2014-09-24 浪潮(北京)电子信息产业有限公司 应用服务健康检查方法、装置和***
CN104618493A (zh) * 2015-02-12 2015-05-13 小米科技有限责任公司 数据请求处理方法及装置
CN106412091A (zh) * 2016-10-25 2017-02-15 广东欧珀移动通信有限公司 数据传输的控制方法、装置及***

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4720295B2 (ja) * 2005-06-02 2011-07-13 日本電気株式会社 異常検出システムおよび保全システム
CN102333007B (zh) * 2011-09-28 2013-09-18 重庆大学 在线Web服务质量监测***及方法
CN104915846A (zh) * 2015-06-18 2015-09-16 北京京东尚科信息技术有限公司 一种电子商务时间序列数据的异常检测方法及***
CN106547852B (zh) * 2016-10-19 2021-03-12 腾讯科技(深圳)有限公司 异常数据检测方法及装置、数据预处理方法及***

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102075380A (zh) * 2010-12-16 2011-05-25 中兴通讯股份有限公司 一种服务器状态检测方法及装置
CN103023938A (zh) * 2011-09-26 2013-04-03 阿里巴巴集团控股有限公司 一种服务器集群的服务能力控制方法和***
CN104065508A (zh) * 2014-06-23 2014-09-24 浪潮(北京)电子信息产业有限公司 应用服务健康检查方法、装置和***
CN104618493A (zh) * 2015-02-12 2015-05-13 小米科技有限责任公司 数据请求处理方法及装置
CN106412091A (zh) * 2016-10-25 2017-02-15 广东欧珀移动通信有限公司 数据传输的控制方法、装置及***

Also Published As

Publication number Publication date
CN107204875A (zh) 2017-09-26

Similar Documents

Publication Publication Date Title
CN107204875B (zh) 数据上报链路监测方法、装置、电子设备及存储介质
US10904112B2 (en) Automatic capture of detailed analysis information based on remote server analysis
US8805999B2 (en) Administering event reporting rules in a distributed processing system
CN107370806B (zh) Http状态码监控方法、装置、存储介质和电子设备
CN110740072B (zh) 一种故障检测方法、装置和相关设备
CN109936613B (zh) 应用于服务器的容灾方法和装置
CN109039817B (zh) 一种用于流量监控的信息处理方法、装置、设备及介质
CN113268399B (zh) 一种告警处理方法、装置和电子设备
CN110231998B (zh) 分布式定时任务的检测方法、装置及存储介质
CN109769029B (zh) 基于用电信息采集***的通信连接方法及终端设备
CN110717132A (zh) 全链路监控***数据收集方法、推送方法及相关设备
CN114090366A (zh) 一种监控数据的方法、装置和***
CN112350854A (zh) 一种流量故障定位方法、装置、设备及存储介质
CN113206797A (zh) 一种流量控制方法、装置、电子设备和存储介质
CN110708234A (zh) 消息发送的处理方法、消息发送的处理装置及存储介质
CN110225113B (zh) 一种服务监控方法及***
US10616081B2 (en) Application aware cluster monitoring
CN112817687A (zh) 一种数据同步方法和装置
CN112994934B (zh) 数据交互方法、装置及***
CN116260747A (zh) 终端测试设备的监测方法、装置及电子设备
US7908546B2 (en) Methods and apparatus for detection of performance conditions in processing system
CN112463514A (zh) 分布式缓存集群的监测方法和装置
CN110852537A (zh) 服务质量检测方法和装置
CN114500255B (zh) 一种日志数据上报方法、装置、设备及存储介质
CN114064362B (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