CN112148508A - 一种信息处理的方法及相关装置 - Google Patents

一种信息处理的方法及相关装置 Download PDF

Info

Publication number
CN112148508A
CN112148508A CN202011063115.7A CN202011063115A CN112148508A CN 112148508 A CN112148508 A CN 112148508A CN 202011063115 A CN202011063115 A CN 202011063115A CN 112148508 A CN112148508 A CN 112148508A
Authority
CN
China
Prior art keywords
request
information
module
response
data
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
CN202011063115.7A
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.)
Etekcity Corp
Original Assignee
Etekcity 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 Etekcity Corp filed Critical Etekcity Corp
Priority to CN202011063115.7A priority Critical patent/CN112148508A/zh
Publication of CN112148508A publication Critical patent/CN112148508A/zh
Pending legal-status Critical Current

Links

Images

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/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/541Client-server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/544Remote

Landscapes

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

Abstract

本申请实施例公开了一种信息处理的方法及相关装置,该方法通过判断请求响应的第二相关数据是否满足预设条件来确定该请求是慢请求还是错误请求,从而针对性地将这些请求的相关信息传输至信息收集模块中存储,而其他不满足预设条件情况下的请求则不需要传输相关信息,节省了传输的数据量以及***开销,降低分布式链路跟踪***内部的数据传输量和存储量。

Description

一种信息处理的方法及相关装置
技术领域
本申请实施例涉及信息处理技术领域,尤其涉及一种信息处理的方法及相关装置。
背景技术
随着网络业务越来越复杂,特别是随着微服务架构和容器技术的兴起,看似简单的一 个应用,后台可能有几十个甚至几百个服务在支撑。例如,一个请求可能需要多次的服务 调用,经历复杂的链路过程,最后才能完成。当请求延迟或者请求不可用时,***需要快 速地定位服务的故障点,找出故障或者响应缓慢的服务位置以便后续处理。当前的技术中, zipkin分布式跟踪***技术,能够找出该出现故障或者响应缓慢的后台服务。zipkin分 布式跟踪***的方案是在请求中加入跟踪身份标识号(traceID;identity document,ID)、 跨度身份标识号(spanID)等标识来标记一个请求和相关子请求,然后将这些请求的相关 数据传输到一个收集器(collector),然后保存到存储器(storage)的数据库中,由应用程序编程接口(application programming interface,API)查询存储,最后可以在用 户界面(User Interface)上展示。
然而,当请求量大时,Zipkin分布式跟踪***收集数据和保存数据的开销会很大,不 但占用内存和数据传输量,还会影响***的性能。在请求量大时,Zipkin的解决方案是,通过数据采样,只采集部分数据。但采样的方法可能会导致部分关键请求数据丢失,进而影响故障定位,而且采集样本的针对性也不足。
发明内容
本申请实施例提供了一种信息处理的方法及相关装置,能够针对符合条件的请求采集 数据,降低分布式链路跟踪***内部的数据传输量和存储量。
第一方面,本申请提供了一种信息处理的方法,包括:接收请求,并记录所述请求的 第一相关数据;向业务模块发送所述请求,以使得所述业务模块生成所述请求的第一相关 信息并返回所述请求对应的响应;接收所述响应,并确定所述响应的第二相关数据;根据 所述第一相关数据和所述第二相关数据,生成所述请求的第二相关信息;当所述第二相关 数据满足预设条件时,则向信息收集模块发送所述第二相关信息,并向所述业务模块发送 指示信息,所述指示信息用于指示所述业务模块向所述信息收集模块发送所述第一相关信 息。
结合第一方面,在本申请实施例的一种实现方式中,所述向所述业务模块发送所述请 求之前,还包括:在所述请求中添加链路跟踪标识。
结合第一方面,在本申请实施例的一种实现方式中,所述指示信息包括链路跟踪标识; 所述指示信息用于指示所述业务模块向所述信息收集模块发送与所述链路跟踪标识匹配 的所述第一相关信息。
结合第一方面,在本申请实施例的一种实现方式中,所述当所述第二相关数据满足所 述预设条件时,则向所述信息收集模块发送所述第二相关信息,包括:所述第二相关数据 包括响应时长;若所述响应时长超过预设时间阈值,则所述请求为慢请求,所述响应满足 所述预设条件。
结合第一方面,在本申请实施例的一种实现方式中,所述当所述第二相关数据满足所 述预设条件时,则向所述信息收集模块发送所述第二相关信息,包括:所述第二相关数据 包括错误状态码;若所述错误状态码为预设值,则所述请求为错误请求,所述响应满足所 述预设条件。
结合第一方面,在本申请实施例的一种实现方式中,还包括:若未收到所述响应,则 所述请求为慢请求,并向信息收集模块发送所述第二相关信息,并向所述业务模块发送指 示信息,所述指示信息用于指示所述业务模块向所述信息收集模块发送所述第一相关信 息。
结合第一方面,在本申请实施例的一种实现方式中,所述向信息收集模块发送所述第 二相关信息之后,所述方法还包括:删除保存的所述第二相关信息。
第二方面,本申请实施例提供一种信息处理的装置,包括:接收模块,用于接收请求,并记录所述请求的第一相关数据;发送模块,用于向业务模块发送所述请求,以使得 所述业务模块生成所述请求的第一相关信息并返回所述请求对应的响应;所述接收模块, 还用于接收所述响应,并确定所述响应的第二相关数据;处理模块,用于根据所述第一相 关数据和所述第二相关数据,生成所述请求的第二相关信息;当所述第二相关数据满足预 设条件时,则所述发送模块向信息收集模块发送所述第二相关信息,并向所述业务模块发 送指示信息,所述指示信息用于指示所述业务模块向所述信息收集模块发送所述第一相关信息。
结合第二方面,在本申请实施例的一种实现方式中,所述处理模块还用于在所述请求 中添加链路跟踪标识。
结合第二方面,在本申请实施例的一种实现方式中,所述指示信息包括链路跟踪标识; 所述指示信息用于指示所述业务模块向所述信息收集模块发送与所述链路跟踪标识匹配 的所述第一相关信息。
结合第二方面,在本申请实施例的一种实现方式中,所述第二相关数据包括响应时长; 若所述响应时长超过预设时间阈值,则所述请求为慢请求,所述响应满足所述预设条件。
结合第二方面,在本申请实施例的一种实现方式中,所述第二相关数据包括错误状态 码;若所述错误状态码为预设值,则所述请求为错误请求,所述响应满足所述预设条件。
结合第二方面,在本申请实施例的一种实现方式中,若未收到所述响应,则所述请求 为慢请求,并所述发送模块向信息收集模块发送所述第二相关信息,并向所述业务模块发 送指示信息,所述指示信息用于指示所述业务模块向所述信息收集模块发送所述第一相关 信息。
结合第二方面,在本申请实施例的一种实现方式中,所述处理模块还用于删除保存的 所述第二相关信息。
第三方面,本申请实施例提供一种网络设备,所述网络设备包括一个以上处理器、存 储器以及通信接口;所述存储器中存储有程序代码;所述处理器执行所述存储器中所述程 序代码时实现第一方面的方法。
第四方面,本申请实施例提供一种计算机可读存储介质,当指令在计算机装置上运行 时,使得所述计算机装置执行如第一方面的方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
在传统的Zipkin***中,服务节点将每条请求信息(经采样)都发送到信息收集模块,导致数据传输量较大,在业务繁忙的时候经常出现卡顿,并且常常丢失部分数据,很 可能丢失关键数据。本申请实施例提供的信息处理方法能够由网关模块通知业务模块(即 各服务节点)确认哪些请求符合预设条件,则业务模块可以仅发送这些符合预设条件的请 求相关信息,减少了数据传输量,并且针对性强,不会丢失关键数据。
附图说明
图1为本申请实施例提供的应用场景示意图;
图2为本申请实施例提供的一种信息处理的方法的流程图;
图3为本申请实施例提供的信息处理方法的另一个实施例示意图;
图4为本申请实施例提供的一种网络设备结构示意图;
图5为本申请实施例提供的一种信息处理的装置的示意图。
具体实施方式
本申请实施例提供了一种信息处理的方法及相关装置,能够针对符合条件的请求采集 数据,降低分布式链路跟踪***内部的数据传输量和存储量。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第 三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先 后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实 施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“对 应于”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或 单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可 包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释 为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如” 等词旨在以具体方式呈现相关概念。
图1为本申请实施例提供的应用场景示意图。
请求端发出请求,该请求经过网关模块到达业务模块。
在本申请的一个实施例中,请求端发送请求以调用业务模块中的服务。该请求从请求 端发出,先到达网关模块,再从网关模块发送到业务模块。
其中,请求端可以是用户终端(用户终端的协议不限于应用程序(application,APP) 协议、网页协议和用户脚本协议等)或第三方云平台,本申请的实施例对此不做限定。这 里的用户终端可以包括但不限定于手机、智能终端(比如,烟雾报警器、智能门锁)等。
其中,网关模块可以是通过服务器实现的应用网关、协议网关等。本申请的实施例对 网关模块的网关类型不做限定。请求经过网关模块时,网关模块会记录该请求的相关数据, 例如请求到达网关的时间、路径标识、调用下一服务节点、离开时间等。
在本申请的一个实施例中,请求经过网关模块到达业务模块时,通常会经过业务模块 中的多个服务节点,并在各服务节点之间分别进行多次调用,形成复杂的路径。
其中,业务模块可以包括在一个服务器上实现的多个服务节点,也可以包括在多个服 务器上实现的多个服务节点,本申请的实施例对业务模块的类型和其服务节点的数量不做 限定。请求端发送请求,该请求经过网关模块到达业务模块中所需的各个节点,业务模块 接收到该请求后,记录该请求的相关信息,并返回相应的响应给网关模块。业务模块所记 录的该请求的相关信息包括但不限于请求到达时间、离开时间、路径标识等。业务模块返 回的响应,通常包括请求处理结果的错误状态码和请求处理结果的业务内容,该响应的内 容一般与请求类型相关,本申请的实施例对此不作限定。
在本申请的一个实施例中,在请求被业务模块接收并返回响应的过程中,网关模块和 业务模块分别将自身保存的与请求相关的数据发送到信息收集模块,收集模块将其发送到 存储模块的数据库中以进行保存。
其中,信息收集模块为用于收集请求的相关数据的具有计算功能的装置,对这些数据 验证、存储以及创建查询需要的索引等,本申请的实施例对此不做限制。存储模块用于存 储由信息收集器收集的请求的相关数据。
图2为本申请实施例提供的一种信息处理的方法的流程图。该流程可由上述的网关模 块执行,该流程包括:
201、接收请求,并记录该请求的第一相关数据。
在本申请实施例中,网关模块具体可以获取请求端发送的请求。
在本申请实施例中,请求可以是业务请求,在实际应用中还可以称为数据请求等其他 请求,本申请实施例对此不做限定。
网关模块可以记录该请求的第一相关数据。相关数据的含义与前述相同,即可以是请 求到达网关的时间、路径标识、调用下一服务节点、离开时间等。本申请实施例对此不作 限定。这些请求的第一相关数据会与后续网关模块接收到的来自服务节点的响应的第二相 关数据,共同形成网关模块所保存的第二相关信息。
在本申请实施例中,该第一相关数据可以缓存在网关模块的内存中。网关模块可以按 照过期策略删除内存中的该第一相关数据,以节省内存资源开销。上述的过期策略是指, 设定一个过期时长,从第一相关数据被生成开始计时,当计时达到该设定的过期时长时, 则网关模块可以删除该第一相关数据。在实际应用中,网关模块也可以在执行步骤203或 步骤204之后开始计时,本申请实施例对此不作限定。
202、向业务模块发送该请求;
在本申请实施例中,网关模块可以向业务模块发送该请求,以使得该业务模块生成该 请求的第一相关信息并返回该请求对应的响应。
在一些实施例中,网关模块在向业务模块发送该请求之前,网关模块可以在请求中添 加链路跟踪标识,用于对该请求进行跟踪识别。
其中,该链路跟踪标识与该请求结合后,网关模块向业务模块发送加入链路跟踪标识 的请求,就可以根据该链路跟踪标识确定该特定标识的请求经过业务模块中不同的节点路 径,以实现对该请求路径的跟踪识别。
在本申请实施例中,业务模块接收到该请求后,可以生成该请求的第一相关信息。第 一相关信息可以包括但不限于请求到达时间、离开时间、路径标识等,本申请实施例对此 不作限定。
业务模块还可以生成并返回该请求对应的响应。其中,业务模块接收到该请求后,可 以按照正常流程处理该请求,返回请求对应的响应。其中,响应包括请求处理结果的错误 状态码、时间信息、和请求处理结果的业务内容,该响应的内容一般与请求类型相关,本申请的实施例对此不作限定。
203、接收该响应,并确定该响应的第二相关数据;
在本申请实施例中,网关模块接收到该响应后,可以确定该响应的第二相关数据,第 二相关数据通常包括表示请求处理结果的错误状态码和请求处理结果的内容,响应内容一 般与请求类型相关,本申请的实施例对此不作限定。第二相关数据还包括响应本身到达网 关模块的时长,本申请实施例对此不作限定。具体地,响应时长由网关模块记录,从网关 模块接收请求的时刻到网关模块向请求端返回响应的时刻之间的时间差,可以为响应时 长。请求错误状态码表示业务模块是否成功处理该请求。业务模块可以将该请求错误状态 码携带在响应中,发送给网关模块。
在本申请的一个实施例中,如果网关模块没有接受到该响应,则无需确定响应的第二 相关数据,并在步骤204中直接根据第一相关数据生成第二相关信息,在步骤205中按照 第二相关数据满足预设条件的后续过程,进行处理。
204、根据第一相关数据和第二相关数据,生成该请求的第二相关信息;
其中,网关模块本身保存了请求初次到达网关模块时的相关数据,例如请求到达的时 刻、调用其他模块时间、调用其他模块请求等。之后,当业务模块返回响应时,网关模块 又从响应中得知了关于请求是否被执,以及响应时长等信息。因此,网关模块综合请求的 相关数据和响应,可以得到请求的第二相关信息。其中,第二相关信息包括请求到达的时 间、调用其他模块时间、调用下一模块地址、以及响应内容例如错误状态码和响应时长等。 在其他实施例中,第二相关信息还可以包括其他与该请求相关的信息。
在本申请的一个实施例中,如果网关模块没有收到响应,则根据第一相关数据生成第 二相关信息。
第二相关信息不仅可以为网关模块判断该请求对应的服务是否发生故障提供参考信 息,还可以当被发送到信息收集模块后,方便信息收集模块做筛选。
在本申请的一个实施例中,网关模块从第二相关信息的生成时刻开始计时,若计时达 到第二预设时间,则删除第二相关信息。
其中,第二预设时间是本申请实施例中设置的一个用于定期清理网关模块内存的预设 时间。因为,网关模块生成了第二相关信息后,不会一直保存该请求的第二相关信息,而 是会设置一个预设时间,在本申请的实施例中设置为第二预设时间,从第二相关信息的生 成时刻开始计时,若计时达到第二预设时间,第二相关信息还存在于业务模块的内存中, 则删除第二相关信息。这样可以避免保存过大的数据量,定期清除不需要的数据。
205、当第二相关数据满足预设条件时,则向信息收集模块发送第二相关信息,并向 业务模块发送指示信息。
在本申请的一个实施例中,预设条件可以是响应的错误状态码为预设值,该预设值指 示该请求执行失败,则该请求是错误请求。例如,http协议中的错误码用于指示http协 议下的私有协议在响应的时候是否有错误。当该错误状态码为0时,网关模块可以判断当 前正确执行请求。该错误状态码为其他数字时,网关模块可以判断相关的请求错误,即该 请求为错误请求。
在本申请的又一实施例中,预设条件可以是响应到达网关模块的响应时长超过了一个 预设的时间阈值,则该请求为慢请求。
在本申请的一个实施例中,如果网关模块没有收到响应,则无需确定响应的第二相关 数据,直接将请求判断为慢请求。并按照第二相关数据满足预设条件的后续过程,进行处 理,即向信息收集模块发送第二相关信息,并向业务模块发送指示信息。
网关模块判断出来的慢请求或者错误请求都是符合预设条件的请求,其相关信息均需 要被记录下来,以供后续分析。在其他实施例中,也可以用其他情况或依据作为预设条件, 以获取到符合其他预设条件的请求的相关信息,用于后续分析,本申请实施例对这些预设 条件不做限定。
在本申请的一个实施例中,当响应满足预设条件时,网关模块将内存中的第二相关信 息发送到信息收集模块,并且指示业务模块向信息收集模块发送第一相关信息。
此时,网关模块识别出了慢请求和错误请求,并且把自身保存的该请求的第二相关信 息发送给了信息收集模块,此时还需要业务模块中的请求访问过的各个节点也把关于该请 求的信息发送到信息收集模块,这样才能将此***中的该请求的信息完备地收集起来。因 此,网关模块指示业务模块向信息收集模块发送业务模块所保存的第一相关信息。
在本申请的一个实施例中,网关模块发送了第二相关信息后,可以从内存中删除该第 二相关信息。以达到节省存储空间的技术效果。
同理,在本申请的另一实施例中,业务模块发送了第一相关信息后,可以从内存中删 除该第一相关信息。以达到节省存储空间,避免数据量过大的技术效果。
在一些实施例中,网关模块在生成指示信息时,可以在指示信息中添加与前述步骤202 相同的链路跟踪标识。则当业务模块接收到该指示信息之后,向信息收集模块发送与链路 跟踪标识匹配的第一相关信息。
其中,网关模块将该请求的链路跟踪标识发送给业务模块。业务模块接收到链路跟踪 标识后,可以根据该链路跟踪标识查找到该请求都经过了哪些节点,传输路径如何,在不 同节点处又做了哪些处理,以及各节点的到达和离开时刻,停留时间等信息,这些信息就 是与该请求的链路跟踪标识相匹配的第一相关信息。第一相关信息是由该请求经过的业务 模块中的节点各自保存的。业务模块接收到链路跟踪标识,将与该标识相匹配的相关信息 由请求经过的各个服务节点发送至信息收集模块。
可以理解的是,网关模块可以向***中的业务模块中的所有节点发送该链路跟踪标 识,则一旦有业务模块中的服务节点发现保存有该链路跟踪标识对应的第一相关信息,则 会将该第一相关信息发送至信息收集模块。
在一些实施例中,业务模块向信息收集模块发送了第一相关信息后,可以在缓存中删 除该第一相关信息或以过期策略的方式删除该第一相关信息,以降低缓存的数据存储量。
在本申请实施例中,信息收集模块(collector)接收到第一相关信息和第二相关信 息后,可以将其存储到存储模块(storage)的数据库中。
其中,信息收集模块还可以对接收到的第一相关信息和第二相关信息进行筛选再发送 到存储模块,本申请对此不作限定。其中,存储模块为具有存储功能的存储器等,数据库 可以是各种类型的数据库。
本申请的实施例通过网关模块判断来自业务模块的响应的第二相关数据是否满足预 设条件,来确定该请求是否属于慢请求和错误请求,从而针对性地将这些有问题的请求的 相关信息传输至信息收集模块再进行存储,而其他不满足预设条件情况下的请求,例如被 正常执行的请求,则不需要传输相关信息,节省了传输的数据量以及***开销,降低分布 式链路跟踪***内部的数据传输量和存储量。同时设置过期策略,到达一定预设时间后, 网关模块和业务模块删除各自保存的信息,减少内存占用。以下将提供更加详细的实施例 以说明本申请的技术方案。
图3为本申请实施例提供的信息处理方法的另一个实施例示意图。该示意图包括以下 流程:
301、请求端向网关模块发送请求。
在本申请实施例中,请求端可以向网关模块发送请求,具体与步骤201中的描述类似, 此处不再赘述。
302、网关模块接收该请求,并记录请求的第一相关数据。
网关模块接收到来自请求端的请求,并且,记录该请求的第一相关数据,该第一相关 数据包括但不限于请求时间、调用其他模块时间、调用的下一节点等,与前述实施例类似, 此处不再赘述。
可以理解的是,网关模块可以设置合理的过期策略,对计时超过预设阈值的第一相关 数据删除,以防止内存占用过多。
303、网关模块在所述请求中添加链路跟踪标识,并向业务模块发送该请求。
其中,该链路跟踪标识可以是traceID,parentId和spanId等,本申请实施例对此不做限定。该链路跟踪标识与该请求结合后,该请求被发送到业务模块,则可以根据该链路跟踪标识确定请求路径,实现对该请求的跟踪。
304、业务模块接收该请求,生成请求的第一相关信息并返回所述请求对应的响应。
在本申请实施例中,业务模块接收到请求后,将该请求的相关信息记录下来。可以理 解的是,网关模块处保存的该请求的相关信息和业务模块保存的该请求的相关信息的类型 可以类似,但内容不同,因为该请求在网关模块和业务模块传输时的时间、经过的网络节 点和被处理的情况不同。因此本申请实施例中,业务模块保存的该请求的相关信息称为第 一相关信息,网关模块处保存的该请求的相关信息称为第二相关信息。
在本申请实施例中,业务模块还会返回所述请求对应的响应。
其中,业务模块处理请求后会生成并向网关返回请求对应的响应。其中,响应包括请 求处理结果的错误状态码、时间信息、和请求处理结果的业务内容,该响应的内容一般与 请求类型相关,本申请的实施例对此不作限定。
305、网关模块接收响应,并确定响应的第二相关数据。
在本申请实施例中,网关模块在接收到该响应后,可以得到响应的第二相关数据。第 二相关数据包括响应时长、错误状态码等。
其中,响应时长可以是网关模块发出该请求到收到该请求响应之间的时长。
其中,错误状态码表示业务模块是否成功处理该请求。例如,http协议中的错误状态 码(errorcode)为0时,表示请求被正确执行。该错误状态码为其他数字时,表示请求 错误。
在本申请的一个实施例中,如果网关模块没有收到响应,则无需确定响应的第二相关 数据,直接将请求判断为慢请求。并按照第二相关数据满足预设条件的后续过程,进行处 理。
306、网关模块根据第一相关数据和第二相关数据,生成请求的第二相关信息。
在本申请的实施例中,第一相关数据为请求初次到达网关时,网关模块保存的关于该 请求的信息;第二相关数据为请求的响应返回网关模块处时所携带的关于该请求的信息。
在本申请的一个实施例中,第二相关信息为网关模块处保存的关于该请求的全部信 息。
在本申请的一个实施例中,网关模块如果没有收到响应,则无需确定响应的第二相关 数据,直接将该请求判断为慢请求,第一相关数据即为第二相关信息。
在本申请的一个实施例中,如果网关模块没有收到响应,则按照第一相关数据生成第 二相关信息。
307、当第二相关数据满足预设条件时,网关模块向信息收集模块发送第二相关信息, 并向业务模块发送包括链路跟踪标识的指示信息。
在本申请的一个实施例中,预设条件为:响应时长超过预设时间阈值,或错误状态码 为预设值。其中,预设时间阈值为响应的超时阈值,且错误状态码的预设值表示该请求未 被正确执行。
其中,当第二相关数据中包含的响应时长超过预设时间阈值时,第二相关数据满足预 设条件,该请求为慢请求;
其中,当第二相关数据中包含的响应错误状态码为预设值时,第二相关数据满足预设 条件,该请求为错误请求。
在本申请的一个实施例中,网关模块如果没有收到响应,直接将该请求判断为慢请求。
其中,慢请求或者错误请求都是需要重点关注的请求,第二相关数据满足其中一个即 为满足预设条件。在实际应用中,管理人员还可以设定其他预设条件,以获取到符合其他 预设条件的请求的相关信息,用于后续分析,本申请实施例对这些预设条件不做限定。
在本申请的一个实施例中,当第二相关数据满足预设条件时,网关模块向信息收集模 块发送第二相关信息,并向业务模块发送指示信息。
其中,满足预设条件代表该请求为慢请求或错误请求,即需要关注的请求,因此将该 请求的第二相关信息发送给信息收集模块进行收集。
在本申请的实施例中,网关模块向信息收集模块发送了第二相关信息后,可以从内存 中删除该第二相关信息,以避免内存过多占用。
在本申请的另一实施例中,设置过期策略以删除该第二相关信息。例如,网关模块保 存了第二相关信息,且请求被正确执行,即第二相关数据不满足预设条件,此时无需向信 息收集模块发送该第二相关信息,因此设置一个时限,到了该时限则该第二信息过期,网 关模块自动将其删除,以降低缓存的数据存储量。
在本申请的一个实施例中,当第二相关数据满足预设条件时,网关模块向业务模块发 送包括链路跟踪标识的指示信息。
其中,该指示信息包括链路跟踪标识,以指示所述业务模块向所述信息收集模块发送 与所述链路跟踪标识匹配的所述第一相关信息。该链路跟踪标识被发送到业务模块的所有 节点,以找到与该请求链路跟踪标识所匹配的节点,从而实现链路跟踪。
308、业务模块接收指示信息,并根据该指示信息向所述信息收集模块发送第一相关 信息。
在本申请的实施例中,业务模块接收到网关发送的带有链路跟踪标识的指示信息,根 据链路跟踪标识找到与之匹配的节点以及该各个节点处保存的关于该请求的第一相关信 息。
其中,第一相关信息可以是请求时间、调用其他模块时间、调用下一节点地址等保存 在业务模块处的关于该请求的全部信息。
在本申请的实施例中,业务模块找到该请求的第一相关信息并将该第一相关信息发送 到信息收集模块。
在本申请的实施例中,业务模块向信息收集模块发送了第一相关信息后,可以从内存 中删除该第一相关信息,以避免内存过多占用。
在本申请的另一实施例中,设置过期策略以删除该第一相关信息。例如,业务模块保 存了第一相关信息,且请求被正确执行,此时无需向信息收集模块发送该第一相关信息, 因此设置一个时限,到了该时限则该第一信息过期,自动将其删除,以降低缓存的数据存 储量。
可以理解的是,当网关模块判断出慢请求或错误请求,并将指示信息发送给业务模块 之后,网关模块向信息收集模块发送第二相关信息和业务模块向信息收集模块发送第一相 关信息之间的先后时间顺序,不作限制。
在本申请实施例中,信息收集模块接收到请求相关信息后,可以校验并保存这些请求 相关信息到存储模块的数据库中。并且,信息收集模块可以利用第一相关信息和第二相关 信息对***中各个模块的慢请求和错误请求进行统计和分级,形成监控信息。在本申请的 实施例中,还可以设置监控和报警模块,用于向信息收集模块采集监控信息。当监控信息 中的某些统计值达到阈值时,触发报警。
本申请的实施例通过网关模块判断来自业务模块的响应的第二相关数据是否满足预 设条件,来确定该请求是否属于慢请求和错误请求,从而针对性地将这些有问题的请求的 相关信息传输至信息收集模块再进行存储,而其他不满足预设条件情况下的请求,例如被 正常执行的请求,则不需要传输相关信息,节省了传输的数据量以及***开销,降低分布 式链路跟踪***内部的数据传输量和存储量。同时设置过期策略,到达一定预设时间后, 网关模块和业务模块删除各自保存的信息,减少内存占用,并且针对性强,不会丢失关键 数据。
进一步地,本申请实施例提供的信息处理方法将请求的相关信息先缓存到每个服务器 的缓存(定期刷新),得到通知后才会发送,而不是直接实时发送到信息收集模块,降低 分布式链路跟踪***内部的数据传输量和存储量。
图4为本申请实施例提供的一种网络设备的示意图。该网络设备400包括:一个或多 个处理器401、存储器403和通信接口404,处理器401、存储器403和通信接口404可以 通过通信总线402相连。所述存储器403用于存储一个或多个程序;所述一个或多个处理 器401用于运行所述一个或多个程序,使得网络设备400执行如上述各个方法实施例对应 的方法。即,该网络设备400可为上述图2或图3所示的方法实施例中的网关模块和业务 模块。
处理器401可以是一个通用中央处理器(central processing unit,CPU)、网络处理器(network processer,NP)、微处理器、或者可以是一个或多个用于实现本申请方 案的集成电路,例如,专用集成电路(application-specific integrated circuit, ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以 是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻 辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。
通信总线402用于在上述组件之间传送信息。通信总线402可以分为地址总线、数据 总线、控制总线等。为便于表示,附图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器403可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其它类型的静态存储设备,也可以是随机存取存储器(random access memory,RAM) 或者可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only Memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光 碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备, 或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机 存取的任何其它介质,但不限于此。存储器403可以是独立存在,并通过通信总线402与 处理器401相连接。存储器403也可以和处理器401集成在一起。
通信接口404使用任何收发器一类的装置,用于与其它设备或通信网络通信。通信接 口404包括有线通信接口,还可以包括无线通信接口。其中,有线通信接口例如可以为以太网接口。以太网接口可以是光接口,电接口或其组合。无线通信接口可以为无线局域 网(wireless local area networks,WLAN)接口,蜂窝网络通信接口或其组合等。
在具体实现中,作为一种实施例,处理器401可以包括一个或多个CPU,如附图4中所示的CPU0和CPU1。
在具体实现中,作为一种实施例,网络设备400可以包括多个处理器,如附图4中所示的处理器401和处理器405。这些处理器中的每一个可以是一个单核处理器(single-CPU),也可以是一个多核处理器(multi-CPU)。这里的处理器可以指一个或 多个设备、电路、和/或用于处理数据(如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,网络设备400还可以包括输出设备和输入设备。输 出设备和处理器401通信,可以以多种方式来显示信息。例如,输出设备可以是液晶显示器(liquid crystal display,LCD)、发光二级管(light emitting diode,LED)显示 设备、阴极射线管(cathode ray tube,CRT)显示设备或投影仪(projector)等。输入 设备和处理器401通信,可以以多种方式接收用户的输入。例如,输入设备可以是鼠标、 键盘、触摸屏设备或传感设备等。
在一些实施例中,存储器403用于存储执行本申请方案的程序代码410,处理器401可以执行存储器403中存储的程序代码410。也即是,网络设备400可以通过处理器401 以及存储器403中的程序代码410,来实现方法实施例提供的报文处理方法。
本申请实施例的网络设备400可对应于上述各个方法实施例中的网关设备,并且,该 网络设备400中的处理器401、通信接口404等可以实现上述各个方法实施例中的网关设备所具有的功能和/或所实施的各种步骤和方法。为了简洁,在此不再赘述。
本申请实施例还提供一种计算机可读存储介质,当指令在计算机装置上运行时,使得 该计算机装置执行上述图2对应的实施例中的所有步骤。
图5为本申请实施例提供的一种信息处理的装置的示意图。该信息处理的装置500包 括:
接收模块501,用于执行上述图2对应的各个实施例中的步骤201、步骤203,或执行上述图3对应的各个实施例中的步骤302、步骤305。
发送模块502,用于执行上述图2对应的各个实施例中的步骤202、步骤205,或执行上述图3对应的各个实施例中的步骤303、步骤307。
处理模块503,用于执行上述图2对应的各个实施例中的步骤204,或执行上述图3对应的各个实施例中的步骤306。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单 元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单 元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一 点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置 或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示 的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是 各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时, 可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上 或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式 体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法 的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM, Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘 等各种可以存储程序代码的介质。

Claims (10)

1.一种信息处理的方法,其特征在于,包括:
接收请求,并记录所述请求的第一相关数据;
向业务模块发送所述请求,以使得所述业务模块生成所述请求的第一相关信息并返回所述请求对应的响应;
接收所述响应,并确定所述响应的第二相关数据;
根据所述第一相关数据和所述第二相关数据,生成所述请求的第二相关信息;
当所述第二相关数据满足预设条件时,则向信息收集模块发送所述第二相关信息,并向所述业务模块发送指示信息,所述指示信息用于指示所述业务模块向所述信息收集模块发送所述第一相关信息。
2.根据权利要求1所述的方法,其特征在于,所述向所述业务模块发送所述请求之前,还包括:
在所述请求中添加链路跟踪标识。
3.根据权利要求2所述的方法,其特征在于,所述指示信息包括链路跟踪标识;所述指示信息用于指示所述业务模块向所述信息收集模块发送与所述链路跟踪标识匹配的所述第一相关信息。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述当所述第二相关数据满足所述预设条件时,则向所述信息收集模块发送所述第二相关信息,包括:
所述第二相关数据包括响应时长;
若所述响应时长超过预设时间阈值,则所述请求为慢请求,所述响应满足所述预设条件。
5.根据权利要1-3任一项所述的方法,其特征在于,所述当所述第二相关数据满足所述预设条件时,则向所述信息收集模块发送所述第二相关信息,包括:
所述第二相关数据包括错误状态码;
若所述错误状态码为预设值,则所述请求为错误请求,所述响应满足所述预设条件。
6.根据权利要求1所述的方法,其特征在于,还包括:
若未收到所述响应,则所述请求为慢请求,并向信息收集模块发送所述第二相关信息,并向所述业务模块发送指示信息,所述指示信息用于指示所述业务模块向所述信息收集模块发送所述第一相关信息。
7.根据权利要求1所述的方法,其特征在于,所述向信息收集模块发送所述第二相关信息之后,所述方法还包括:
删除保存的所述第二相关信息。
8.一种信息处理的装置,其特征在于,包括:
接收模块,用于接收请求,并记录所述请求的第一相关数据;
发送模块,用于向业务模块发送所述请求,以使得所述业务模块生成所述请求的第一相关信息并返回所述请求对应的响应;
所述接收模块,还用于接收所述响应,并确定所述响应的第二相关数据;
处理模块,用于根据所述第一相关数据和所述第二相关数据,生成所述请求的第二相关信息;
当所述第二相关数据满足预设条件时,则所述发送模块向信息收集模块发送所述第二相关信息,并向所述业务模块发送指示信息,所述指示信息用于指示所述业务模块向所述信息收集模块发送所述第一相关信息。
9.一种网络设备,其特征在于,所述网络设备包括一个以上处理器、存储器以及通信接口;
所述存储器中存储有程序代码;
所述处理器执行所述存储器中所述程序代码时实现权利要求1至7任意一项所述的方法。
10.一种计算机可读存储介质,其特征在于,当指令在计算机装置上运行时,使得所述计算机装置执行如权利要求1至7任一所述的方法。
CN202011063115.7A 2020-09-30 2020-09-30 一种信息处理的方法及相关装置 Pending CN112148508A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011063115.7A CN112148508A (zh) 2020-09-30 2020-09-30 一种信息处理的方法及相关装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011063115.7A CN112148508A (zh) 2020-09-30 2020-09-30 一种信息处理的方法及相关装置

Publications (1)

Publication Number Publication Date
CN112148508A true CN112148508A (zh) 2020-12-29

Family

ID=73951663

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011063115.7A Pending CN112148508A (zh) 2020-09-30 2020-09-30 一种信息处理的方法及相关装置

Country Status (1)

Country Link
CN (1) CN112148508A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112835655A (zh) * 2021-02-26 2021-05-25 深圳市晨北科技有限公司 数据透明传输方法、***、传输终端和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7478403B1 (en) * 2000-04-21 2009-01-13 Sun Microsystems, Inc. Secure access to managed network objects using a configurable platform-independent gateway providing individual object-level access control
CN104579788A (zh) * 2015-01-21 2015-04-29 上海交通大学 一种分布式动态路由网络的错误定位方法
CN108429800A (zh) * 2010-11-22 2018-08-21 杭州硕文软件有限公司 一种移动设备
CN110995658A (zh) * 2019-11-12 2020-04-10 威富通科技有限公司 网关保护方法、装置、计算机设备及存储介质
CN111092778A (zh) * 2019-12-31 2020-05-01 谷云科技(广州)有限责任公司 基于有限时序数据队列实现api实时预警的***及方法
CN111404759A (zh) * 2020-04-17 2020-07-10 腾讯科技(深圳)有限公司 服务检测方法、规则配置方法、相关设备及介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7478403B1 (en) * 2000-04-21 2009-01-13 Sun Microsystems, Inc. Secure access to managed network objects using a configurable platform-independent gateway providing individual object-level access control
CN108429800A (zh) * 2010-11-22 2018-08-21 杭州硕文软件有限公司 一种移动设备
CN104579788A (zh) * 2015-01-21 2015-04-29 上海交通大学 一种分布式动态路由网络的错误定位方法
CN110995658A (zh) * 2019-11-12 2020-04-10 威富通科技有限公司 网关保护方法、装置、计算机设备及存储介质
CN111092778A (zh) * 2019-12-31 2020-05-01 谷云科技(广州)有限责任公司 基于有限时序数据队列实现api实时预警的***及方法
CN111404759A (zh) * 2020-04-17 2020-07-10 腾讯科技(深圳)有限公司 服务检测方法、规则配置方法、相关设备及介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112835655A (zh) * 2021-02-26 2021-05-25 深圳市晨北科技有限公司 数据透明传输方法、***、传输终端和存储介质
CN112835655B (zh) * 2021-02-26 2024-05-10 深圳市晨北科技有限公司 数据透明传输方法、***、传输终端和存储介质

Similar Documents

Publication Publication Date Title
EP2563062B1 (en) Long connection management apparatus and link resource management method for long connection communication
CN109600258B (zh) 工业协议报文记录装置及方法
US20150170070A1 (en) Method, apparatus, and system for monitoring website
CN110362455B (zh) 一种数据处理方法和数据处理装置
KR102167613B1 (ko) 메시지 푸시 방법 및 장치
CN107172171B (zh) 一种服务请求处理方法、装置及计算机可读存储介质
CN111522711B (zh) 一种数据监控处理***、方法、执行端、监控端及电子设备
CN110932933B (zh) 网络状况监测方法、计算设备及计算机存储介质
CN107181821A (zh) 一种基于sse规范的消息推送方法及装置
CN111740868A (zh) 告警数据的处理方法和装置及存储介质
CN110430070B (zh) 一种服务状态分析方法、装置、服务器、数据分析设备及介质
US20230087446A1 (en) Network monitoring method, electronic device and storage medium
CN112148508A (zh) 一种信息处理的方法及相关装置
CN105893150B (zh) 接口调用频度控制、接口调用请求处理方法及装置
CN114090293A (zh) 一种服务提供方法及电子设备
CN110659247A (zh) 话单文件连续性检测方法、装置、设备及介质
CN117135580A (zh) 5g消息通用接入***及方法
CN112131198B (zh) 一种日志分析方法、装置及电子设备
CN115333917A (zh) 一种cdn异常检测方法及装置
CN109951811B (zh) 一种服务号码短信监控方法、装置及***
CN113760398A (zh) 接口调用方法、服务器、***以及存储介质
CN112597354A (zh) 一种提供配置参数的方法、装置、***及存储介质
CN110196874A (zh) 数据订阅方法、装置及服务器
CN111708689B (zh) 一种修改ab实验的方法、装置及电子设备
WO2017166438A1 (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