CN109871320A - 一种数据处理方法、装置、应用服务器及存储介质 - Google Patents

一种数据处理方法、装置、应用服务器及存储介质 Download PDF

Info

Publication number
CN109871320A
CN109871320A CN201910056778.7A CN201910056778A CN109871320A CN 109871320 A CN109871320 A CN 109871320A CN 201910056778 A CN201910056778 A CN 201910056778A CN 109871320 A CN109871320 A CN 109871320A
Authority
CN
China
Prior art keywords
pressure test
pressure
thread
server
request
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
CN201910056778.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.)
Shanghai Kai Tak Mdt Infotech Ltd
Original Assignee
Shanghai Kai Tak Mdt Infotech 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 Shanghai Kai Tak Mdt Infotech Ltd filed Critical Shanghai Kai Tak Mdt Infotech Ltd
Priority to CN201910056778.7A priority Critical patent/CN109871320A/zh
Publication of CN109871320A publication Critical patent/CN109871320A/zh
Pending legal-status Critical Current

Links

Abstract

本发明涉及数据处理方法、装置、应用服务器及存储介质。该方法应用于压力测试系统中的应用服务器,该系统还包括:压力测试服务器;方法包括:接收来自压力测试服务器的压力测试请求;判断压力测试请求中是否携带有预设的压测标记;在为是时,将接收到压力测试请求的目标线程标记为压力测试线程,以使部署于应用服务器中的第三方软件将来自压力测试线程的测试数据进行隔离;向压力测试服务器反馈压力测试请求处理完成的反馈结果,以使压力测试服务器开启并记录压力测试服务。该方法由于只将接收到压力测试请求的目标线程标记为压力测试线程,也即只涉及极小部分的业务代码的修改,因此操作简便,同时不需要采购额外的硬件,降低了成本。

Description

一种数据处理方法、装置、应用服务器及存储介质
技术领域
本发明属于互联网技术领域,具体涉及一种数据处理方法、装置、应用服务器及存储介质。
背景技术
在一般的大型企业中,生产系统纷繁复杂,大型生产系统可能有上千万行代码;同时生产环境时时刻刻在进行着繁重的业务服务,非常重要,所以一般企业对生产环境的管理及其严格,一般不允许擅自操作生产系统。但是为了应对业务高峰期的系统峰值业务量(比如双11或者大促),需要测试生产系统的系统峰值承受力。目前的测试方式主要是搭建备用的压力测试系统(一般选择生产环境50%的配置硬件),部署软件模拟生产环境进行压测,网络上和人员权限上和真实生产系统完全隔离,防治测试数据和生产数据之间的污染和错误操作带来的事故影响。
发明内容
鉴于此,本发明实施例在于提供一种数据处理方法、装置、应用服务器及存储介质,以有效地改善现有压力测试方式存在的操作繁琐、成本高等问题。
本发明的实施例是这样实现的:
第一方面,本发明实施例提供了一种数据处理方法,应用于压力测试系统中的应用服务器,所述压力测试系统还包括:与所述应用服务器通信的压力测试服务器;所述方法包括:接收来自所述压力测试服务器的压力测试请求;判断所述压力测试请求中是否携带有预设的压测标记;在为是时,将接收到所述压力测试请求的目标线程标记为压力测试线程,以使部署于所述应用服务器中的第三方软件将来自所述压力测试线程的测试数据进行隔离;向所述压力测试服务器反馈所述压力测试请求处理完成的反馈结果,以使所述压力测试服务器开启并记录压力测试服务。
本申请实施例中,在确定来自所述压力测试服务器的压力测试请求中携带有预设的压测标记时,将接收到压力测试请求的目标线程标记为压力测试线程,由于只涉及极小部分的业务代码的修改,因此操作简便,同时不需要采购额外的硬件,降低了成本,直接在生产环境下进行压测,压测结果也更加真实。
结合第一方面的一种可能的实施方式,判断所述压力测试请求中是否携带有预设的压测标记,包括:识别所述压力测试请求的类别;判断所述压力测试请求中是否携带有与识别出的类别对应的压测标记。
结合第一方面的一种可能的实施方式,将接收到所述压力测试请求的目标线程标记为压力测试线程,包括:获取接收所述压力测试请求的目标线程;在所述目标线程中加入JAVA探针,所述JAVA探针用于对所述目标线程的字节码做修改加入所述压测标记,其中,加入了所述JAVA探针的目标线程即为所述压力测试线程。
结合第一方面的一种可能的实施方式,当所述目标线程包括子线程时,所述方法还包括:在所述目标线程中加入Inheritable Thread Local函数使其能在子线程之间传递所述压测标记。
结合第一方面的一种可能的实施方式,在接收来自所述压力测试服务器的压力测试请求之前,所述方法还包括:对所述第三方软件的字节码进行修改使其能识别所述压测标记。
第二方面,本申请实施例还提供了一种数据处理装置,应用于压力测试系统中的应用服务器,所述压力测试系统还包括:与所述应用服务器通信的压力测试服务器;所述装置包括:接收模块、判断模块、标记模块以及反馈模块;接收模块,用于接收来自所述压力测试服务器的压力测试请求;判断模块,用于判断所述压力测试请求中是否携带有预设的压测标记;标记模块,用于在为是时,将接收到所述压力测试请求的目标线程标记为压力测试线程,以使部署于所述应用服务器中的第三方软件将来自所述压力测试线程的测试数据进行隔离;反馈模块,用于向所述压力测试服务器反馈所述压力测试请求处理完成的反馈结果,以使所述压力测试服务器开启并记录压力测试服务。
结合第二方面的一种可能的实施方式,所述判断模块,还用于:识别所述压力测试请求的类别;判断所述压力测试请求中是否携带有与识别出的类别对应的压测标记。
结合第二方面的一种可能的实施方式,所述标记模块,还用于:获取接收所述压力测试请求的目标线程;在所述目标线程中加入JAVA探针,所述JAVA探针用于对所述目标线程的字节码做修改加入所述压测标记,其中,加入了所述JAVA探针的目标线程即为所述压力测试线程。
结合第二方面的一种可能的实施方式,当所述目标线程包括子线程时,所述标记模块,还用于:在所述目标线程中加入Inheritable Thread Local函数使其能在子线程之间传递所述压测标记。
结合第二方面的一种可能的实施方式所述装置还包括:修改模块,所述修改模块,用于对所述第三方软件的字节码进行修改使其能识别所述压测标记。
第三方面,本申请实施例还提供了一种应用服务器,包括存储器和处理器,所述存储器和处理器连接;所述存储器用于存储程序;所述处理器用于调用存储于所述存储器中的程序以执行上述第一方面实施例和/或结合第一方面实施例的任一种可能的实施方式提供的方法。
第四方面,本申请实施例还提供了一种存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时执行上述第一方面实施例和/或结合第一方面实施例的任一种可能的实施方式提供的方法。
本发明的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明实施例而了解。本发明的目的和其他优点可通过在所写的说明书以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。通过附图所示,本发明的上述及其它目的、特征和优势将更加清晰。在全部附图中相同的附图标记指示相同的部分。并未刻意按实际尺寸等比例缩放绘制附图,重点在于示出本发明的主旨。
图1示出了本发明实施例提供的一种应用服务器的结构示意图。
图2示出了本发明实施例提供的一种数据处理方法的流程图。
图3示出了本发明实施例提供的步骤S103的流程图。
图4示出了本发明实施例提供的一种数据处理装置的模块示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明的描述中,需要说明的是,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。再者,本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
如图1所示,图1示出了本发明实施例提供的一种应用服务器100的结构框图。所述应用服务器100包括:数据处理装置110、存储器120、存储控制器130和处理器140。
所述存储器120、存储控制器130、处理器140各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述数据处理装置110包括至少一个可以软件或固件(firmware)的形式存储于所述存储器120中或固化在所述应用服务器100的操作系统(operating system,OS)中的软件功能模块。所述处理器140用于执行存储器120中存储的可执行模块,例如所述数据处理装置110包括的软件功能模块或计算机程序。
其中,存储器120可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器120用于存储程序,所述处理器140在接收到执行指令后,执行所述程序,后述本发明实施例任一实施例揭示的流程定义的应用服务器100所执行的方法可以应用于处理器140中,或者由处理器140实现。
处理器140可能是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
请参阅图2,为本发明实施例提供的一种应用于上述应用服务器100的解调方法,下面将结合图2对其所包含的步骤进行说明。其中,该应用服务器100属于压力测试系统中的一员,该压力测试系统还包括与所述应用服务器100通信的压力测试服务器。用户可以在该压力测试服务器上模拟真实业务请求,以实现压力测试。
步骤S101:接收来自所述压力测试服务器的压力测试请求。
客户在该压力测试服务器上模拟真实业务请求时,该压力测试服务器会响应客户的操作,向应用服务器100发送压力测试请求。
其中,该压力测试服务器模拟真实业务请求应用时,会在请求的入口打入一个特殊的压测标记标识,例如,http请求的header中加入一个标记PT=Y的标识;又例如,在rpc(Remote Procedure Call)请求的隐藏域中加入特殊值。
步骤S102:判断所述压力测试请求中是否携带有预设的压测标记。
应用服务器100在接收到来自所述压力测试服务器的压力测试请求时,判断所述压力测试请求中是否携带有预设的压测标记,若没有携带有预设的压测标记,则不处理,若携带有预设的压测标记则执行步骤S103。
其中,由于不同类别的压力测试请求对应的预设的压测标记不同,因此作为一种可选的实施方式,判断所述压力测试请求中是否携带有预设的压测标记可以是先识别所述压力测试请求的类别;再判断所述压力测试请求中是否携带有与识别出的类别对应的压测标记。例如,首先识别压力测试请求的类别,例如是http请求,还是rpc请求等,然后再判断所述压力测试请求中是否携带有与识别出的类别对应的压测标记,例如,若识别出该压力测试请求为http请求,则判断该压力测试请求中是否携带有与http请求对应的压测标记,若识别出该压力测试请求为rpc请求,则判断该压力测试请求中是否携带有与rpc请求对应的压测标记。
其中,上述的预设的压测标记为事先设置的压测标记,其可以根据自身需要进行设置。如在http请求的header中加入一个标记PT=Y的标识。其中,这个PT=Y的标识即为压测标记。
步骤S103:将接收到所述压力测试请求的目标线程标记为压力测试线程,以使部署于所述应用服务器中的第三方软件(也可称为中间件)将来自所述压力测试线程的测试数据进行隔离。
在为是时也即压力测试请求中携带有预设的压测标记时,将接收到所述压力测试请求的目标线程标记为压力测试线程,以使部署于所述应用服务器中的第三方软件将来自所述压力测试线程的测试数据进行隔离。也即将当前处理压力测试请求的目标线程标记为压力测试线程,以便部署于所述应用服务器中的第三方软件(例如,数据库中间件、缓存中间件和消息中间件)将来自所述压力测试线程的测试数据进行隔离,使其与真实的业务请求区别开来,从而不影响正常的业务请求。
例如,对于数据库中间件来说,将来自于压力测试线程的测试数据全部存储为特定的压测表/压测库,以便与正常的业务数据相隔离。
例如,对于缓存中间件来说,对来自于压力测试线程的测试数据用独立的其他缓存地址进行数据存储,以便与正常的业务数据相隔离。
例如,对于消息中间件来说,对对来自于压力测试线程的测试数据用独立的消息主题进行传输,以便与正常的业务数据相隔离。
作为一种可选的实施方式,可以结合图3所包含的步骤对将接收到所述压力测试请求的目标线程标记为压力测试线程这一过程进行说明。
步骤S201:获取接收所述压力测试请求的目标线程。
获取接收当前压力测试请求的目标线程,也即获取处理当前压力测试请求的目标线程。
步骤S202:在所述目标线程中加入JAVA探针,所述JAVA探针用于对所述目标线程的字节码做修改加入所述压测标记。
在获取到接收当前压力测试请求的目标线程后,在所述目标线程中加入JAVA探针,所述JAVA探针用于对所述目标线程的字节码做修改加入所述压测标记。其中,加入了所述JAVA探针的目标线程即为所述压力测试线程。
作为一种可选的实施方式,当所述目标线程包括子线程时,所述方法还包括:在所述目标线程中加入Inheritable Thread Local函数使其能在子线程之间传递所述压测标记。也即,通过在述目标线程中加入Inheritable Thread Local函数,使得目标线程的各个父子线程之间自动传递该压测标记。该过程也可称为线程染色,也即将压测标记和线程本身的属性结合在一起,同时拓展JAVA的线程属性,让某一个线程在开启一个子线程或者使用一个线程池中的线程来处理异步请求时,自动将压测标传递给下一线程,自动实现压测标记的传递。
其中,在开始压力测试请求之前,也即在应用服务器100接收来自所述压力测试服务器的压力测试请求之前,该方法还包括对所述第三方软件的字节码进行修改使其能识别所述压测标记。也即,对中间件进行改造使其能在各自的调用环节感知到自己的线程属性,此时可以获取线程属性是否压测,来判断数据流动的走向。
对于数据库中间件读写的改造为,判断当前线程是否是压测线程,“是”则数据就自动流向压测表或者压测库,“否”则数据走正常业务数据库或业务表。
对于缓存中间件读写的改造为,判断当前线程是否是压测线程,“是”则数据就自动流向压测缓存或者带有特定前缀的缓存key(无论读写),“否”则数据走正常业务缓存或业务key。
对于消息中间件的改造为,判断当前线程如果是压测线程,“是”则数据就走向压测队列或者压测TOPIC,“否”则走正常队列。
其中,对于大型的生产系统,可能存在大量子系统,其中间件比如缓中间件、数据库中间件、消息中间件等框架大都使用不同的开源实现,有时候即使使用了相同类型的开源实现,比如都使用apache active MQ,但是子系统之间的具体使用版本号可能也存在差异,比如有的子系统用1.0.1有的子系统使用了1.0.2。这时候如果采用上述方案逐一改造中间件,工作量巨大,并且版本混乱容易遗漏,也不便于日后维护。针对该问题,采用了javaagent字节码增强实现中间件改造,因为大部分的中间件代码,在大版本相同的情况下,其代码大体都比较接近,仅有某些细节代码略微不同。因此可以针对某些特定的公用的java类文件进行字节码增强,利用java agent在加载java文件之前做拦截把字节码做修改,加入判断是否压测或者改变线程的逻辑,来实现大量中间件版本的统一压测标记感知修改。
这样,在业务应用每次重启应用的时候,在其启动参数中引入java agent,该agent的作用是在第三方软件从软件包加载到计算机内存的时候,改变该软件代码的形态,可以做到识别出线程中的压测标记。
当压力测试服务器向应用服务器100发起压力测试请求时,由于可能部署于应用服务器100中的中间件还没有进行改造,所以无法识别压测数据和真实数据的区别,因此,作为一种可选的实施方式,在发起压力测试请求之前,会访问一下所有的参与压测的线程的列表(也即压测白名单),以便在压测的时候人工控制哪些线程可以参与压测,哪些线程不能参与压测。其中,压测白名单中的线程为可以识别压测数据和真实数据的线程。
压力测试请求携带有压测标记。所有改造以后的第三方软件(中间件)判断该请求是否是压测请求,如果是,就采用隔离的方式进行分开处理,如果不是压测请求而是一个正常请求,就作为正常业务处理。
步骤S104:向所述压力测试服务器反馈所述压力测试请求处理完成的反馈结果,以使所述压力测试服务器开启并记录压力测试服务。
应用服务器100在将接收到所述压力测试请求的目标线程标记为压力测试线程后,向所述压力测试服务器反馈所述压力测试请求处理完成的反馈结果,以使所述压力测试服务器开启并记录压力测试服务。也即,压力测试服务器在接收到应用服务器100反馈的压力测试请求处理完成的反馈结果后,开启并记录压力测试服务,如,记录压力测试请求时间,每秒钟处理的压力业务单据数量等信息,记录下压力测试的实际结果值。
本申请实施例还提供了一种数据处理装置110,如图4所示。该数据处理装置110包括:接收模块1111、判断模块1112、标记模块1113以及反馈模块1114。
接收模块1111,用于接收来自所述压力测试服务器的压力测试请求;
判断模块1112,用于判断所述压力测试请求中是否携带有预设的压测标记;
标记模块1113,用于在为是时,将接收到所述压力测试请求的目标线程标记为压力测试线程,以使部署于所述应用服务器中的第三方软件将来自所述压力测试线程的测试数据进行隔离;
反馈模块1114,用于向所述压力测试服务器反馈所述压力测试请求处理完成的反馈结果,以使所述压力测试服务器开启并记录压力测试服务。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本发明实施例所提供的数据处理装置110,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
本申请实施例还提供了一种存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时执行上述方法实施例提供的方法,也即该计算机程序被处理器运行时执行上述数据处理方法的步骤。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,笔记本电脑,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种数据处理方法,其特征在于,应用于压力测试系统中的应用服务器,所述压力测试系统还包括:与所述应用服务器通信的压力测试服务器;所述方法包括:
接收来自所述压力测试服务器的压力测试请求;
判断所述压力测试请求中是否携带有预设的压测标记;
在为是时,将接收到所述压力测试请求的目标线程标记为压力测试线程,以使部署于所述应用服务器中的第三方软件将来自所述压力测试线程的测试数据进行隔离;
向所述压力测试服务器反馈所述压力测试请求处理完成的反馈结果,以使所述压力测试服务器开启并记录压力测试服务。
2.根据权利要求1所述的方法,其特征在于,判断所述压力测试请求中是否携带有预设的压测标记,包括:
识别所述压力测试请求的类别;
判断所述压力测试请求中是否携带有与识别出的类别对应的压测标记。
3.根据权利要求1所述的方法,其特征在于,将接收到所述压力测试请求的目标线程标记为压力测试线程,包括:
获取接收所述压力测试请求的目标线程;
在所述目标线程中加入JAVA探针,所述JAVA探针用于对所述目标线程的字节码做修改加入所述压测标记,其中,加入了所述JAVA探针的目标线程即为所述压力测试线程。
4.根据权利要求3所述的方法,其特征在于,当所述目标线程包括子线程时,所述方法还包括:
在所述目标线程中加入Inheritable Thread Local函数使其能在子线程之间传递所述压测标记。
5.根据权利要求1所述的方法,其特征在于,在接收来自所述压力测试服务器的压力测试请求之前,所述方法还包括:
对所述第三方软件的字节码进行修改使其能识别所述压测标记。
6.一种数据处理装置,其特征在于,应用于压力测试系统中的应用服务器,所述压力测试系统还包括:与所述应用服务器通信的压力测试服务器;所述装置包括:
接收模块,用于接收来自所述压力测试服务器的压力测试请求;
判断模块,用于判断所述压力测试请求中是否携带有预设的压测标记;
标记模块,用于在为是时,将接收到所述压力测试请求的目标线程标记为压力测试线程,以使部署于所述应用服务器中的第三方软件将来自所述压力测试线程的测试数据进行隔离;
反馈模块,用于向所述压力测试服务器反馈所述压力测试请求处理完成的反馈结果,以使所述压力测试服务器开启并记录压力测试服务。
7.根据权利要求6所述的装置,其特征在于,所述判断模块,还用于:
识别所述压力测试请求的类别;
判断所述压力测试请求中是否携带有与识别出的类别对应的压测标记。
8.根据权利要求6所述的装置,其特征在于,所述标记模块,还用于:
获取接收所述压力测试请求的目标线程;
在所述目标线程中加入JAVA探针,所述JAVA探针用于对所述目标线程的字节码做修改加入所述压测标记,其中,加入了所述JAVA探针的目标线程即为所述压力测试线程。
9.一种应用服务器,其特征在于,包括存储器和处理器,所述存储器和处理器连接;
所述存储器用于存储程序;
所述处理器用于调用存储于所述存储器中的程序以执行如权利要求1-5中任一项所述的方法。
10.一种存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1-5中任一项所述的方法。
CN201910056778.7A 2019-01-21 2019-01-21 一种数据处理方法、装置、应用服务器及存储介质 Pending CN109871320A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910056778.7A CN109871320A (zh) 2019-01-21 2019-01-21 一种数据处理方法、装置、应用服务器及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910056778.7A CN109871320A (zh) 2019-01-21 2019-01-21 一种数据处理方法、装置、应用服务器及存储介质

Publications (1)

Publication Number Publication Date
CN109871320A true CN109871320A (zh) 2019-06-11

Family

ID=66917946

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910056778.7A Pending CN109871320A (zh) 2019-01-21 2019-01-21 一种数据处理方法、装置、应用服务器及存储介质

Country Status (1)

Country Link
CN (1) CN109871320A (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110569172A (zh) * 2019-09-11 2019-12-13 贵州电网有限责任公司 一种业务层级的性能监控系统
CN110750584A (zh) * 2019-09-18 2020-02-04 苏宁云计算有限公司 数据管理方法和系统
CN111464383A (zh) * 2020-03-30 2020-07-28 中国建设银行股份有限公司 基于生产环境的系统容量测试方法及装置
CN111741032A (zh) * 2020-08-26 2020-10-02 杭州数列网络科技有限责任公司 一种数据传输控制方法、装置及系统
CN112199218A (zh) * 2020-10-26 2021-01-08 北京百家科技集团有限公司 一种压测方法、装置、电子设备及存储介质
CN112416798A (zh) * 2020-12-04 2021-02-26 深圳前海微众银行股份有限公司 数据处理方法、装置、设备和存储介质
CN112615759A (zh) * 2020-12-17 2021-04-06 上海哔哩哔哩科技有限公司 全链路压测组件、全链路压测方法及装置
CN112714042A (zh) * 2020-12-22 2021-04-27 北京字节跳动网络技术有限公司 压力测试方法、装置、电子设备和存储介质
CN113014657A (zh) * 2021-03-09 2021-06-22 北京大米科技有限公司 流量线路的切换方法、装置、存储介质及电子设备
CN113079064A (zh) * 2021-03-26 2021-07-06 北京京东振世信息技术有限公司 压力检测方法、装置与电子设备
CN113157548A (zh) * 2020-01-07 2021-07-23 阿里巴巴集团控股有限公司 测试方法、测试装置以及应用测试器
CN113626295A (zh) * 2020-05-07 2021-11-09 云米互联科技(广东)有限公司 压测数据的处理方法、系统及计算机可读存储介质
WO2021259126A1 (zh) * 2020-06-24 2021-12-30 支付宝(杭州)信息技术有限公司 区块链网络的压力测试方法及装置、系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6324492B1 (en) * 1998-01-20 2001-11-27 Microsoft Corporation Server stress testing using multiple concurrent client simulation
CN103699480A (zh) * 2013-11-29 2014-04-02 杭州安恒信息技术有限公司 一种基于java的web动态安全漏洞检测方法
CN107632920A (zh) * 2017-09-16 2018-01-26 广西电网有限责任公司电力科学研究院 一种输变电设备监测装置深度监控方法
CN108848092A (zh) * 2018-06-20 2018-11-20 中国联合网络通信集团有限公司 基于调用链的微服务灰度发布的处理方法及装置
CN109165168A (zh) * 2018-09-14 2019-01-08 杭州云创共享网络科技有限公司 一种压力测试方法、装置、设备及介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6324492B1 (en) * 1998-01-20 2001-11-27 Microsoft Corporation Server stress testing using multiple concurrent client simulation
CN103699480A (zh) * 2013-11-29 2014-04-02 杭州安恒信息技术有限公司 一种基于java的web动态安全漏洞检测方法
CN107632920A (zh) * 2017-09-16 2018-01-26 广西电网有限责任公司电力科学研究院 一种输变电设备监测装置深度监控方法
CN108848092A (zh) * 2018-06-20 2018-11-20 中国联合网络通信集团有限公司 基于调用链的微服务灰度发布的处理方法及装置
CN109165168A (zh) * 2018-09-14 2019-01-08 杭州云创共享网络科技有限公司 一种压力测试方法、装置、设备及介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
耿杰: "全链路压测平台(Quake)在美团中的实践", 《知乎》 *

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110569172A (zh) * 2019-09-11 2019-12-13 贵州电网有限责任公司 一种业务层级的性能监控系统
CN110569172B (zh) * 2019-09-11 2023-04-07 贵州电网有限责任公司 一种业务层级的性能监控系统
CN110750584A (zh) * 2019-09-18 2020-02-04 苏宁云计算有限公司 数据管理方法和系统
CN113157548A (zh) * 2020-01-07 2021-07-23 阿里巴巴集团控股有限公司 测试方法、测试装置以及应用测试器
CN111464383A (zh) * 2020-03-30 2020-07-28 中国建设银行股份有限公司 基于生产环境的系统容量测试方法及装置
CN113626295B (zh) * 2020-05-07 2023-07-07 云米互联科技(广东)有限公司 压测数据的处理方法、系统及计算机可读存储介质
CN113626295A (zh) * 2020-05-07 2021-11-09 云米互联科技(广东)有限公司 压测数据的处理方法、系统及计算机可读存储介质
WO2021259126A1 (zh) * 2020-06-24 2021-12-30 支付宝(杭州)信息技术有限公司 区块链网络的压力测试方法及装置、系统
CN111741032A (zh) * 2020-08-26 2020-10-02 杭州数列网络科技有限责任公司 一种数据传输控制方法、装置及系统
CN111741032B (zh) * 2020-08-26 2021-02-26 杭州数列网络科技有限责任公司 一种数据传输控制方法
CN112199218A (zh) * 2020-10-26 2021-01-08 北京百家科技集团有限公司 一种压测方法、装置、电子设备及存储介质
CN112416798A (zh) * 2020-12-04 2021-02-26 深圳前海微众银行股份有限公司 数据处理方法、装置、设备和存储介质
CN112416798B (zh) * 2020-12-04 2024-04-09 深圳前海微众银行股份有限公司 数据处理方法、装置、设备和存储介质
CN112615759A (zh) * 2020-12-17 2021-04-06 上海哔哩哔哩科技有限公司 全链路压测组件、全链路压测方法及装置
CN112714042A (zh) * 2020-12-22 2021-04-27 北京字节跳动网络技术有限公司 压力测试方法、装置、电子设备和存储介质
CN113014657A (zh) * 2021-03-09 2021-06-22 北京大米科技有限公司 流量线路的切换方法、装置、存储介质及电子设备
CN113079064A (zh) * 2021-03-26 2021-07-06 北京京东振世信息技术有限公司 压力检测方法、装置与电子设备

Similar Documents

Publication Publication Date Title
CN109871320A (zh) 一种数据处理方法、装置、应用服务器及存储介质
JP2017514218A (ja) サードパーティアプリケーションの実行
US20130054792A1 (en) Cloud-based performance testing of functionality of an application prior to completion of development
CN109308266A (zh) 测试用例的构建方法、测试方法、装置、设备和介质
CN106354634A (zh) 接口测试方法及装置
US8996714B2 (en) State-dependent entity based implementation of a service oriented architected application
US8825798B1 (en) Business event tracking system
US20110258609A1 (en) Method and system for software defect reporting
CN107832207A (zh) 接口性能测试方法、装置、存储介质和计算机设备
US10354208B2 (en) System and method for defining run books
US9304894B2 (en) Code-free testing framework
CN105915529A (zh) 一种报文生成方法及装置
CN109460841A (zh) 用户开户方法、系统及存储介质
CN112035363A (zh) 接口自动化测试方法及装置
CN110955724A (zh) 基于区块链的数据处理方法、装置、节点设备及存储介质
CN112434114A (zh) 电子票据处理方法、装置、介质及电子设备
US11677827B2 (en) Method and system for cache data analysis for enterprise content management systems
CN108809896A (zh) 一种信息校验方法、装置和电子设备
CN112613288B (zh) 结算单生成方法、装置、计算机设备和存储介质
CN114418750A (zh) 业务处理方法、装置、电子设备及存储介质
CN109992614B (zh) 数据获取方法、装置和服务器
Bluemke et al. Tool for automatic testing of web services
CN110990275A (zh) 一种手机银行的页面展示测试方法及装置
Cecowski et al. Cloud computing applications
CN112799710B (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: 20190611

RJ01 Rejection of invention patent application after publication