CN114500321A - 报文核验方法、装置及存储介质 - Google Patents
报文核验方法、装置及存储介质 Download PDFInfo
- Publication number
- CN114500321A CN114500321A CN202210380213.6A CN202210380213A CN114500321A CN 114500321 A CN114500321 A CN 114500321A CN 202210380213 A CN202210380213 A CN 202210380213A CN 114500321 A CN114500321 A CN 114500321A
- Authority
- CN
- China
- Prior art keywords
- message
- trigger
- queue
- receipts
- messages
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请实施例提供一种报文核验方法、装置及存储介质,涉及信息技术领域,该方法包括:使用多个第一监听器对多个报文接收队列中的报文回执进行监听;响应于监听到一个或多个报文接收队列接收到多个新的报文回执,从一个或多个报文接收队列中提取多个新的报文回执,基于多个新的报文回执生成多个触发消息;将多个触发消息缓存在触发消息队列中;使用一个第二监听器对触发消息队列中的触发消息进行监听;响应于监听到的多个触发消息,激活核验程序。本申请实施例提供的方法,能够提升报文核验的效率,节省系统资源。
Description
技术领域
本申请实施例涉及信息技术领域,尤其涉及一种报文核验方法、装置及存储介质。
背景技术
在信息系统中,请求发起方向服务器端发送请求报文后,可以收到请求报文的处理回执,其中,该处理回执可以是对请求报文的处理响应。而核验服务器端的处理结果是验证系统设计以及开发正确性的重要手段。例如,可以核验服务器端是否正确处理了请求报文以及一些关键的业务字段是否符合预期。
传统的核验服务器端的处理结果的方式是:请求发起方收到服务器端的处理回执之后,监听器取走回执报文并触发核查程序,核查程序登录服务器端数据库并执行相应的查询语句(例如,SQL语句),查询对应的条目、字段是否符合预期值,以判断报文是否处理成功。如果是吞吐量较大的场景,需要请求发起方设置多个报文接收队列同时接收回执报文,相应的,需要设置多个监听器同时监听多个报文接收队列。当每个报文接收队列每次收到回执报文后,监听器取走回执报文后均需唤醒核查程序,这种方式效率较低并会消耗较多的系统资源。此外,这种传统的核验方法在读取报文接收队列的回执报文后,该回执报文从报文接收队列中消失,破坏了测试场景的真实性,而真实场景中,这些回执报文并不会被取走,而是被真正的下游消费端系统消费。
发明内容
本申请实施例提供了一种报文核验方法、装置及存储介质,可以提高报文核验的效率,减少系统资源的消耗。
第一方面,本申请实施例提供了一种报文核验方法,包括:
使用多个第一监听器对多个报文接收队列中的报文回执进行监听;其中,所述报文回执由服务器端发送,一个第一监听器用于监听一个报文接收队列;
响应于监听到一个或多个报文接收队列接收到多个新的报文回执,从所述一个或多个报文接收队列中提取所述多个新的报文回执,基于所述多个新的报文回执生成多个触发消息;其中,所述多个触发消息包括查询语句;
将所述多个触发消息缓存在触发消息队列中;
使用一个第二监听器对所述触发消息队列中的触发消息进行监听;
响应于监听到的多个触发消息,激活核验程序,其中,所述核验程序用于依次执行所述监听到的多个触发消息中的查询语句,用于对所述服务器端的处理结果进行核验。
本申请实施例中,通过在监测到回执报文后,生成触发消息,并将触发消息缓存在缓存队列中,由此可以使得系统可以激活核验程序后处理缓存队列中的触发消息,避免多次激活核验程序,从而可以提高报文核验的效率,减少系统资源的消耗。
其中一种可能的实现方式中,所述使用一个第二监听器对所述触发消息队列中的触发消息进行监听包括:
基于预设周期,使用一个第二监听器对所述触发消息队列中的触发消息进行监听。
本申请实施例中,通过周期性的使用第二监听器进行监听,避免第二监听器的长启监听导致的系统资源的消耗。
其中一种可能的实现方式中,所述方法还包括:
若未监听到触发消息,不激活所述核验程序。
本申请实施例中,当未监听到触发消息时,可以不激活核验程序,将核验程序处于睡眠态,从而可以节省系统系统。
其中一种可能的实现方式中,所述基于所述多个新的报文回执生成多个触发消息包括:
获取所述多个新的报文回执中的报文序号及报文类型;
基于所述报文类型在缓存数据库中查询获得与所述报文类型对应的查询语句;其中,所述缓存数据库中预先存储报文类型与查询语句之间的映射关系;
基于所述报文序号、所述报文类型及所述查询语句生成多个触发消息。
本申请实施例中,通过在缓存数据库中预设报文类型及查询语句的映射关系,可以使得在获取到报文回执后,可以快速找到对应的查询语句,由此可以提高核验的效率。
其中一种可能的实现方式中,所述基于所述多个新的报文回执生成多个触发消息之后,所述方法还包括:
将所述多个新的报文回执返还给所述报文接收队列。
本申请实施例中,当生成触发消息后,仍将报文回执返还给报文接收队列,可以不破坏测试场景的真实性。
第二方面,本申请实施例提供一种报文核验装置,包括:
第一监听模块,用于使用多个第一监听器对多个报文接收队列中的报文回执进行监听;其中,所述报文回执由服务器端发送,一个第一监听器用于监听一个报文接收队列;
生成模块,用于响应于监听到一个或多个报文接收队列接收到多个新的报文回执,从所述一个或多个报文接收队列中提取所述多个新的报文回执,基于所述多个新的报文回执生成多个触发消息;其中,所述多个触发消息包括查询语句;
缓存模块,用于将所述多个触发消息缓存在触发消息队列中;
第二监听模块,用于使用一个第二监听器对所述触发消息队列中的触发消息进行监听;
激活模块,用于响应于监听到的多个触发消息,激活核验程序,其中,所述核验程序用于依次执行所述监听到的多个触发消息中的查询语句,用于对所述服务器端的处理结果进行核验。
其中一种可能的实现方式中,上述第二监听模块还用于基于预设周期,使用一个第二监听器对所述触发消息队列中的触发消息进行监听。
其中一种可能的实现方式中,上述装置还包括:
睡眠模块,用于若未监听到触发消息,不激活所述核验程序。
其中一种可能的实现方式中,上述生成模块还用于
获取所述多个新的报文回执中的报文序号及报文类型;
基于所述报文类型在缓存数据库中查询获得与所述报文类型对应的查询语句;其中,所述缓存数据库中预先存储报文类型与查询语句之间的映射关系;
基于所述报文序号、所述报文类型及所述查询语句生成多个触发消息。
其中一种可能的实现方式中,上述装置还包括:
返还模块,用于将所述多个新的报文回执返还给所述报文接收队列。
第三方面,本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行如第一方面所述的方法。
第四方面,本申请实施例提供一种计算机程序,当上述计算机程序被计算机执行时,用于执行第一方面所述的方法。
在一种可能的设计中,第四方面中的程序可以全部或者部分存储在与处理器封装在一起的存储介质上,也可以部分或者全部存储在不与处理器封装在一起的存储器上。
附图说明
图1为本申请实施例提供的应用场景架构示意图;
图2为本申请实施例提供的报文核验方法的流程示意图;
图3为本申请实施例提供的报文核验装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在信息系统中,请求发起方向服务器端发送请求报文后,可以收到请求报文的处理回执,其中,该处理回执可以是对请求报文的处理结果。而核验服务器端的处理结果是验证系统设计以及开发正确性的重要手段。例如,可以核验服务器端是否正确处理了请求报文以及一些关键的业务字段是否符合预期。
传统的核验服务器端的处理结果的方式是:请求发起方收到服务器端的处理回执之后,监听器取走回执报文并触发核查程序,核查程序登录服务器端数据库并执行相应的查询语句(例如,SQL语句),查询对应的条目、字段是否符合预期值,以判断报文是否处理成功。如果是吞吐量较大的场景,需要请求发起方设置多个报文接收队列同时接收回执报文,相应的,需要设置多个监听器同时监听多个报文接收队列。当每个报文接收队列每次收到回执报文后,监听器取走回执报文后均需唤醒核查程序,这种方式效率较低并会消耗较多的系统资源。此外,这种传统的核验方法在读取报文接收队列的回执报文后,该回执报文从报文接收队列中消失,破坏了测试场景的真实性,而真实场景中,这些回执报文并不会被取走,而是被真正的下游消费端系统消费。
基于上述问题,本申请实施例提出了一种数据生成方法。
现结合图1和图2对本申请实施例提供的报文核验方法进行说明。图1为本申请实施例提供的应用场景架构图。如图1所示,该应用场景包括请求发起方100、结果核验方200及服务器端300。可以理解的是,请求发起方100、结果核验方200都可以认为是客户端。请求发起方100是发送请求报文的一方,例如,请求发起方100可以向服务器端300发送请求报文,服务器端300对请求报文进行处理后,将报文回执发送给请求发起方100。请求发起方100中可以设置报文接收队列,报文接收队列可以用于接收服务器端300发送的报文回执。其中,报文回执是对请求发起方100发送的请求报文的处理结果。结果核验方200是对报文回执进行核验的一方,例如,结果核验方200监听到请求发起方100接收到服务器端300发送的报文回执后,可以发起核验,用于对服务器端300的处理结果进行核验。结果核验方200中可以设置第一监听器、第二监听器、触发消息队列及缓存数据库。其中,第一监听器的数量可以是多个,多个第一监听器可以用于监听多个报文接收队列中的报文回执,一个第一监听器用于监听一个报文接收队列,并可以在监听到报文回执后,生成触发消息,并将触发消息缓存在触发消息队列中。其中,触发消息可以根据在缓存数据库存储的查询语句生成。第二监听器用于监听触发消息队列中的触发消息,其中,第二监听器的数量为一个,也就是说,仅有一个第二监听器用于监听一个触发消息队列,并可以在监听到触发消息后,激活核验程序,用于执行触发消息中的查询语句,达到对服务器端300的处理结果进行核验的目的。
如图2所示为本申请实施例提供的报文核验方法一个实施例的流程示意图,具体包括以下步骤:
步骤201,结果核验方200监听多个报文接收队列中的报文回执。
具体地,由于请求发起方100中包含多个报文接收队列,因此,结果核验方200可以对这多个报文接收队列进行监听,用于监听一个或多个报文接收队列中是否接收到多个新的报文回执。在具体实现时,由于一个监听器通常只能监听一个队列,无法同时监听多个队列,为了能应对大吞吐量、多队列的场景,结果核验方200可以给每个报文接收队列设置一个第一监听器,也就是说,可以设置多个第一监听器,每个第一监听器监听一个报文接收队列,由此可以实现在大吞吐量、多队列的场景下进行报文回执的监听,从而可以提高对报文回执处理的效率。
步骤202,响应于监听到一个或多个报文接收队列接收到多个新的报文回执,结果核验方200从一个或多个报文接收队列中提取多个新的报文回执,并解析多个新的报文回执,得到报文ID及报文类型。
具体地,由于请求发起方100接收到多个新的报文回执后,会将多个新的报文回执缓存在一个或多个报文接收队列中,因此,当任一个报文接收队列接收到一个新的报文回执时,结果核验方200可以监听到该新的报文回执。当结果核验方200通过第一监听器监听到一个或多个报文接收队列接收到多个新的报文回执后,可以从一个或多个报文接收队列中提取多个新的报文回执,并可以对多个新的报文回执进行解析。
其中,对多个新的报文回执进行解析的具体方式可以是解析多个新的报文回执中的报文ID和报文类型。报文ID用于标识报文的身份,也就是说,报文ID可以用于标明该报文回执是针对哪条请求报文的处理结果,该报文ID也可以认为是报文序号。报文类型用于标识请求报文的类型。可以理解的是,报文类型可以与查询语句进行对应。也就是说,不同类型的请求报文可以通过对应的查询语句在服务器端300进行查询,以完成核验。
步骤203,结果核验方200基于报文类型,在缓存数据库中查询获得查询语句。
具体地,结果核验方200中的缓存数据库可以预先存储报文类型与查询语句之间的映射关系。当结果核验方200获取到报文类型后,可以基于报文类型在缓存数据库中进行查询,由此可以获得与报文类型对应的查询语句。其中,查询语句用于在服务器端300的数据库中执行查询,由此可以获得查询结果,以便根据查询结果对服务器端300的处理结果进行核验。表1示例性的示出了报文类型与查询语句之间的映射关系。
表1
报文类型 | 查询语句 |
10100101 | SELECT 字段1a, 字段1b, 字段1c, 字段1d from 表x where msgid = 报文ID |
10100102 | SELECT 字段2a, 字段2b, 字段2c, 字段2d from 表y where msgid = 报文ID and 字段2d=完成 |
10100103 | SELECT 字段3a, 字段3b, 字段3c, 字段3d from 表z where msgid = 报文ID and字段3a=已轧差 |
步骤204,结果核验方200基于报文ID、报文类型及查询语句生成多个触发消息,在生成触发消息后,将与该触发消息对应的报文回执返回给报文接收队列。
具体地,当结果核验方200确定与报文类型对应的查询语句后,可以基于报文ID、报文类型及查询语句生成多个触发消息。也就是说,一个触发消息包含一个报文ID、一个报文类型及一个查询语句。
举例来说,当请求发起方100接收到1000个报文回执后,结果核验方200监听到这1000个报文回执。假设这1000个报文回执中的报文ID为10000598~10001597,报文类型均为10100101。则结果核验方200通过在缓存数据库中查询可以获得与报文类型对应的查询语句,例如,以表1为例,与报文类型10100101对应的查询语句为<SELECT 字段1a, 字段1b,字段1c, 字段1d from 表x where msgid = 报文ID>,由此可以根据上述1000个报文回执生成1000个触发消息。其中,第一个触发消息,也就是与报文ID为10000598的报文回执对应的触发消息为<10000598, 报文类型10100101, SELECT 字段1a, 字段1b, 字段1c, 字段1d from 表x where msgid = 10000598>,其中,第一个触发消息中的报文ID为10000598,报文类型为10100101,查询语句为<SELECT 字段1a, 字段1b, 字段1c, 字段1d from 表xwhere msgid = 10000598>。第二个触发消息,也就是与报文ID为10000599的报文回执对应的触发消息为<10000599, 报文类型10100101, SELECT 字段1a, 字段1b, 字段1c, 字段1d from 表x where msgid = 10000599>,其中,第二个触发消息中的报文ID为10000599,报文类型为10100101,查询语句为<SELECT 字段1a, 字段1b, 字段1c, 字段1d from 表xwhere msgid = 10000599>。以此类推,直到生成最后一个触发消息。其中,最后一个触发消息,也就是与报文ID为10001597的报文回执对应的触发消息为<10001597, 报文类型10100101, SELECT 字段1a, 字段1b, 字段1c, 字段1d from 表x where msgid =10001597>。
需要说明的是,当结果核验方200生成任一个触发消息后,可以将与该触发消息对应的报文回执返回给报文接收队列,由此可以不破坏测试场景的真实性。
步骤205,结果核验方200将生成的多个触发消息缓存在触发消息队列中。
具体地,当结果核验方200生成多个触发消息之后,可以将生成的多个触发消息缓存在触发消息队列中。可以理解的是,请求发起方100中设置的报文接收队列为多个,也就是说,当请求发起方100接收到报文回执后, 可以将报文回执放在不同的报文接收队列中,而结果核验方200只设置1个触发消息队列,也就是说,所有的触发消息都只缓存在同一个触发消息队列中。
步骤206,结果核验方200对触发消息队列中的触发消息进行监听。
具体地,结果核验方200可以对触发消息队列进行监听,用于监听触发消息队列是否存在触发消息。示例性的,结果核验方200可以通过设置一个第二监听器对触发消息队列进行监听,用于监听触发消息队列中是否存在触发消息。通过最小化监听器的数量,来最小化核验程序被反复唤醒的频率并最小化核验程序在不同监听器之间切换的上下文代价,从而最大化提升核验方的执行效率。
进一步地,上述基于第二监听器的监听还可以是基于周期的,例如,结果核验方200可以以预设的周期通过第二监听器对触发消息队列进行监听。以周期为1秒为例,结果核验方200的第二监听器启动监听后,若监听到触发消息队列中存在触发消息,则可以激活核验程序;若未监听到触发消息队列中存在触发消息,则可以不激活核验程序,也就是说,核验程序可以处于睡眠态,此时,第二监听器关闭监听,并在预设周期(例如,1秒)后再次启动监听,由此可以节省系统资源。
步骤207,响应于监听到的触发消息队列中的多个触发消息,结果核验方200激活核验程序,用于依次执行监听到的多个触发消息中的查询语句,用于对服务器端300的处理结果进行核验。
具体地,若结果核验方200监听到触发消息队列中存在多个触发消息,则可以激活核验程序,其中,该核验程序用于依次执行监听到的多个触发消息中的查询语句,用于对服务器端300的处理结果进行核验。
在具体实现时,结果核验方200判断触发消息队列中存在多个触发消息后,可以激活核验程序,并可以从触发消息队列中依次读取触发消息,连接服务器端300的数据库,并在该数据库中执行触发消息中的查询语句,用于查询与报文ID对应的数据库条目以及字段是否符合预期值,以判断请求报文是否处理成功。若结果核验方200未监听到触发消息队列中存在触发消息,则核验程序不激活核验程序,由此可以节省系统资源。
示例性的,以步骤204中的1000个触发消息为例,当结果核验方200监听到这1000个触发消息后,可以激活核验程序,依次读取这1000个触发消息。例如,首先读取第一个触发消息,也就是与报文ID为10000598对应的触发消息<10000598, 报文类型10100101,SELECT 字段1a, 字段1b, 字段1c, 字段1d from 表x where msgid = 10000598>。接着,结果核验方200与服务器端300建立连接,用于访问服务器端300的数据库。当结果核验方200与服务器端300建立数据库的连接后,执行第一个触发消息中的查询语句<SELECT 字段1a, 字段1b, 字段1c, 字段1d from 表x where msgid = 10000598>,由此可以得到查询结果,例如,该查询结果是:字段1a=已轧差, 字段1b=0, 字段1c=已入库, 字段1d=完成。然后,通过将查询结果与预期值进行比对,由此可以判断请求报文的处理结果是否成功。例如,假设预期值为1a=已轧差, 字段1b=0, 字段1c=已入库, 字段1d=完成,可见,查询结果与预期值一致,此时,可判定请求报文的处理结果为成功。当结果核验方200处理完第一个触发消息后,可以依次处理剩余的999个触发消息,由此可以实现通过一次激活核验程序,处理多个触发消息,从而可以避免每个报文回执都会激活一次核验程序导致的资源浪费、时间冗长的问题,进而可以提高报文核验效率。当结果核验方200完成对上述1000条触发消息的核验后,可以进一步监听触发消息队列中是否存在触发消息,若触发消息队列中还有未处理的触发消息,则可以继续对未处理的触发消息进行核验,若触发消息队列中没有未处理的触发消息,则可以断开与服务器300的连接,并将核验程序进入睡眠态。
本申请实施例中,通过设置触发消息队列,将多个报文接收队列中的报文回执缓存在触发消息队列中,并对触发消息队列进行监听,由此可以使得当监听到触发消息后,激活核验程序,一次性处理多个触发消息,由此可以减少唤醒核验程序的次数,无需在监听到每个报文回执后唤醒核验程序,从而可以避免多次唤醒核验程序导致的系统资源的浪费,进而可以解决在系统吞吐量较大的情况下(例如,请求报文达到每秒1000笔以上),导致的核验效率低、消耗系统资源较大的问题。
图3为本申请报文核验装置一个实施例的结构示意图,如图3所示,上述报文核验装置30可以包括:第一监听模块31、生成模块32、缓存模块33、第二监听模块34及激活模块35;其中,
第一监听模块31,用于使用多个第一监听器对多个报文接收队列中的报文回执进行监听;其中,所述报文回执由服务器端发送,一个第一监听器用于监听一个报文接收队列;
生成模块32,用于响应于监听到一个或多个报文接收队列接收到多个新的报文回执,从所述一个或多个报文接收队列中提取所述多个新的报文回执,基于所述多个新的报文回执生成多个触发消息;其中,所述多个触发消息包括查询语句;
缓存模块33,用于将所述多个触发消息缓存在触发消息队列中;
第二监听模块34,用于使用一个第二监听器对所述触发消息队列中的触发消息进行监听;
激活模块35,用于响应于监听到的多个触发消息,激活核验程序,其中,所述核验程序用于依次执行所述监听到的多个触发消息中的查询语句,用于对所述服务器端的处理结果进行核验。
其中一种可能的实现方式中,上述第二监听模块34还用于基于预设周期,使用一个第二监听器对所述触发消息队列中的触发消息进行监听。
其中一种可能的实现方式中,上述装置30还包括:
睡眠模块36,用于若未监听到触发消息,不激活所述核验程序。
其中一种可能的实现方式中,上述生成模块32还用于
获取所述多个新的报文回执中的报文序号及报文类型;
基于所述报文类型在缓存数据库中查询获得与所述报文类型对应的查询语句;其中,所述缓存数据库中预先存储报文类型与查询语句之间的映射关系;
基于所述报文序号、所述报文类型及所述查询语句生成多个触发消息。
其中一种可能的实现方式中,上述装置30还包括:
返还模块37,用于将所述多个新的报文回执返还给所述报文接收队列。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请实施例各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (7)
1.一种报文核验方法,其特征在于,所述方法包括:
使用多个第一监听器对多个报文接收队列中的报文回执进行监听;其中,所述报文回执由服务器端发送,一个第一监听器用于监听一个报文接收队列;
响应于监听到一个或多个报文接收队列接收到多个新的报文回执,从所述一个或多个报文接收队列中提取所述多个新的报文回执,基于所述多个新的报文回执生成多个触发消息;其中,所述多个触发消息包括查询语句;
将所述多个触发消息缓存在触发消息队列中;
使用一个第二监听器对所述触发消息队列中的触发消息进行监听;
响应于监听到的多个触发消息,激活核验程序,其中,所述核验程序用于依次执行所述监听到的多个触发消息中的查询语句,用于对所述服务器端的处理结果进行核验。
2.根据权利要求1所述的方法,其特征在于,所述使用一个第二监听器对所述触发消息队列中的触发消息进行监听包括:
基于预设周期,使用一个第二监听器对所述触发消息队列中的触发消息进行监听。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若未监听到触发消息,不激活所述核验程序。
4.根据权利要求1所述的方法,其特征在于,所述基于所述多个新的报文回执生成多个触发消息包括:
获取所述多个新的报文回执中的报文序号及报文类型;
基于所述报文类型在缓存数据库中查询获得与所述报文类型对应的查询语句;其中,所述缓存数据库中预先存储报文类型与查询语句之间的映射关系;
基于所述报文序号、所述报文类型及所述查询语句生成多个触发消息。
5.根据权利要求1所述的方法,其特征在于,所述基于所述多个新的报文回执生成多个触发消息之后,所述方法还包括:
将所述多个新的报文回执返还给所述报文接收队列。
6.一种报文核验装置,其特征在于,包括:一个或多个功能模块,所述一个或多个功能模块用于执行权利要求1-5任一所述的报文核验方法。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序在计算机上运行时,执行如权利要求1-5任一所述的报文核验方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210380213.6A CN114500321B (zh) | 2022-04-12 | 2022-04-12 | 报文核验方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210380213.6A CN114500321B (zh) | 2022-04-12 | 2022-04-12 | 报文核验方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114500321A true CN114500321A (zh) | 2022-05-13 |
CN114500321B CN114500321B (zh) | 2022-08-02 |
Family
ID=81487604
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210380213.6A Active CN114500321B (zh) | 2022-04-12 | 2022-04-12 | 报文核验方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114500321B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6968556B1 (en) * | 2000-02-15 | 2005-11-22 | Microsoft Corporation | Automatic message-based module invocation |
CN102664827A (zh) * | 2012-04-24 | 2012-09-12 | 深圳市三木通信技术有限公司 | 一种即时通讯消息回执方法及系统 |
WO2012155081A1 (en) * | 2011-05-11 | 2012-11-15 | Visa International Service Association | Electronic receipt manager apparatuses, methods and systems |
US20130111499A1 (en) * | 2011-10-28 | 2013-05-02 | International Business Machines Corporation | Application access to ldap services through a generic ldap interface integrating a message queue |
CN105335667A (zh) * | 2015-10-16 | 2016-02-17 | 北京源创云网络科技有限公司 | 创新创意数据处理方法、装置、系统及存证设备 |
CN106776280A (zh) * | 2016-11-24 | 2017-05-31 | 上海携程商务有限公司 | 可配置性能测试装置 |
US20180144310A1 (en) * | 2015-07-22 | 2018-05-24 | Tendyron Corporation | Data processing method and device, and pos transaction system |
CN110351333A (zh) * | 2019-05-30 | 2019-10-18 | 中国地质大学(武汉) | 一种具备验证机制的请求队列方法及系统 |
CN110868415A (zh) * | 2019-11-15 | 2020-03-06 | 浙江中控技术股份有限公司 | 远程身份验证方法及装置 |
CN112202781A (zh) * | 2020-09-30 | 2021-01-08 | 广东巴金斯科技有限公司 | 一种电商大数据量回执报文处理方法、装置和系统 |
CN113672634A (zh) * | 2021-08-30 | 2021-11-19 | 中国平安人寿保险股份有限公司 | 保单数据的校验方法、装置、设备及存储介质 |
CN114169895A (zh) * | 2021-12-06 | 2022-03-11 | 中国建设银行股份有限公司 | 一种支付信息处理系统、方法、装置、介质、产品和设备 |
-
2022
- 2022-04-12 CN CN202210380213.6A patent/CN114500321B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6968556B1 (en) * | 2000-02-15 | 2005-11-22 | Microsoft Corporation | Automatic message-based module invocation |
WO2012155081A1 (en) * | 2011-05-11 | 2012-11-15 | Visa International Service Association | Electronic receipt manager apparatuses, methods and systems |
US20130111499A1 (en) * | 2011-10-28 | 2013-05-02 | International Business Machines Corporation | Application access to ldap services through a generic ldap interface integrating a message queue |
CN102664827A (zh) * | 2012-04-24 | 2012-09-12 | 深圳市三木通信技术有限公司 | 一种即时通讯消息回执方法及系统 |
US20180144310A1 (en) * | 2015-07-22 | 2018-05-24 | Tendyron Corporation | Data processing method and device, and pos transaction system |
CN105335667A (zh) * | 2015-10-16 | 2016-02-17 | 北京源创云网络科技有限公司 | 创新创意数据处理方法、装置、系统及存证设备 |
CN106776280A (zh) * | 2016-11-24 | 2017-05-31 | 上海携程商务有限公司 | 可配置性能测试装置 |
CN110351333A (zh) * | 2019-05-30 | 2019-10-18 | 中国地质大学(武汉) | 一种具备验证机制的请求队列方法及系统 |
CN110868415A (zh) * | 2019-11-15 | 2020-03-06 | 浙江中控技术股份有限公司 | 远程身份验证方法及装置 |
CN112202781A (zh) * | 2020-09-30 | 2021-01-08 | 广东巴金斯科技有限公司 | 一种电商大数据量回执报文处理方法、装置和系统 |
CN113672634A (zh) * | 2021-08-30 | 2021-11-19 | 中国平安人寿保险股份有限公司 | 保单数据的校验方法、装置、设备及存储介质 |
CN114169895A (zh) * | 2021-12-06 | 2022-03-11 | 中国建设银行股份有限公司 | 一种支付信息处理系统、方法、装置、介质、产品和设备 |
Also Published As
Publication number | Publication date |
---|---|
CN114500321B (zh) | 2022-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109344172B (zh) | 一种高并发数据处理方法、装置及客户端服务器 | |
CN106936441B (zh) | 一种数据压缩方法和装置 | |
CN110109953B (zh) | 一种数据查询方法、装置及设备 | |
CN110909025A (zh) | 数据库的查询方法、查询装置及终端 | |
CN108712426B (zh) | 基于用户行为埋点的爬虫识别方法及系统 | |
CN112015674B (zh) | 基于多层级的缓存资源访问方法、装置和计算机设备 | |
WO2021190087A1 (zh) | 任务执行方法、装置、系统和服务器 | |
CN110213380B (zh) | 一种消息推送方法、装置、计算机设备及存储介质 | |
CN110955857A (zh) | 一种用于高并发环境的业务处理方法及装置 | |
CN112738547B (zh) | 一种实时统计直播在线人数的系统 | |
WO2014190738A1 (en) | System and method for locating a mobile device | |
CN116049109A (zh) | 一种基于过滤器的文件校验方法、系统、设备和介质 | |
CN112434243A (zh) | 一种同步数据的方法、装置和计算机可读存储介质 | |
CN111752482A (zh) | 一种全闪存分布式存储系统中写数据的方法及系统 | |
CN111431931A (zh) | 节点共识方法及装置 | |
CN114500321B (zh) | 报文核验方法、装置及存储介质 | |
CN112835885A (zh) | 一种分布式表格存储的处理方法、装置及系统 | |
CN102761520B (zh) | 认证信息处理方法和系统 | |
CN110555764A (zh) | 一种去中心化环境下区块链达成一致性的方法及系统 | |
WO2021073632A1 (zh) | 物理随机接入信道的数据合并方法、装置及存储介质 | |
CN113760519A (zh) | 分布式事务处理方法、装置、系统和电子设备 | |
CN110209512B (zh) | 基于多数据源的数据核对方法及装置 | |
CN113301136B (zh) | 业务请求处理方法及装置 | |
CN116541416B (zh) | 一种请求数据的优化处理方法及装置 | |
CN114282273A (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 |