CN110134498A - 一种应用兼容性评估方法及装置 - Google Patents
一种应用兼容性评估方法及装置 Download PDFInfo
- Publication number
- CN110134498A CN110134498A CN201810133579.7A CN201810133579A CN110134498A CN 110134498 A CN110134498 A CN 110134498A CN 201810133579 A CN201810133579 A CN 201810133579A CN 110134498 A CN110134498 A CN 110134498A
- Authority
- CN
- China
- Prior art keywords
- big data
- api information
- data platform
- application
- server
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
- G06F9/4856—Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
- G06F9/4862—Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration the task being a mobile agent, i.e. specifically designed to migrate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种应用兼容性评估方法及装置,其中,所述方法应用于一服务器,包括:接收查询请求;解析所述查询请求,获得待评估大数据平台中目标组件对应的第一应用程序接口API信息;获得目标应用程序在历史大数据平台上运行时,至少一个组件所加载的API信息集合,其中,所述历史大数据平台为部署有Agent代理端的大数据平台;从所述API信息集合中确定出与所述目标组件对应的第二API信息;将所述第一API信息与所述第二API信息进行对比,获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果。用于解决现有技术中存在应用程序迁移至目标大数据平台的代价较高的技术问题,降低了应用程序迁移至目标大数据平台的代价。
Description
技术领域
本发明涉及大数据技术领域,特别涉及一种应用兼容性评估方法及装置。
背景技术
近年来,大数据(Big Data)技术得到了各国政府和全球学术界、工业界的高度关注和重视,在各行业领域的应用迅猛发展。在公司业务向智能化、精益化方向发展的同时,对复杂数据处理和实时性提出了更高要求。
在现有技术中,大数据平台和上层应用通常由多家厂商提供,缺乏统一的接口标准,当应用迁移到其它厂商的大数据平台,或者同一厂家不同版本的大数据平台时,常常为兼容性问题而困扰。
举个具体的例子来说,目前各个公司一般会部署大数据平台,例如部署hadoop,不同公司往往要根据自身产品进行定制等原因,为此,使用的hadoop版本一般不一致,也就是说,不同公司使用的大数据平台多少都会有差异。
然而,在现有技术中,架构在大数据平台之上的客户端程序,可能在对接多个大数据平台时,产生API(Application Program Interface,应用程序接口)冲突的问题,比如,多套hadoop、hive、hbase等组件之间的不兼容性。具体来讲,大数据平台的不兼容性,主要是jar包的冲突问题,常见的异常如下所示:
(1)找不到类classNotFoundException
(2)找不到具体的方法,NoSuchMethodError
(3)字段错误,NoSuchFieldError
(4)类错误,LinkageError,(比如,类A依赖类B,但是在在编辑、加载时使用了两个不同的B类class)。
大数据应用程序在迁移到大数据平台之前,往往涉及到大数据平台的搭建、运行所需数据的载入。如果在迁移应用程序之后,才发现应用程序与迁移到的目标平台间不兼容,再来耗费大量的人力、物力和财力来修改应用程序的源代码,应用程序迁移的代价无疑较高。
可见,现有技术中存在应用程序迁移至目标大数据平台的代价较高的技术问题。
发明内容
本发明实施例提供一种应用兼容性评估的方法和装置,用于解决现有技术中存在应用程序迁移至目标大数据平台的代价较高的技术问题,降低了应用程序迁移至目标大数据平台的代价。
一方面,本发明实施例提供了一种应用兼容性评估方法,应用于一服务器,包括:
接收查询请求;
解析所述查询请求,获得待评估大数据平台中目标组件对应的第一应用程序接口API信息;
获得目标应用程序在历史大数据平台上运行时,至少一个组件所加载的API信息集合,其中,所述历史大数据平台为部署有Agent代理端的大数据平台;
从所述API信息集合中确定出与所述目标组件对应的第二API信息;
将所述第一API信息与所述第二API信息进行对比,获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果。
可选地,所述方法还包括:
接收操作请求;
将所述操作请求发送到所述Agent代理端,以使所述Agent代理端收集所述API信息集合,并将所述API信息集合存储至关系型数据库的表Agent DB中。
可选地,在所述获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果之后,所述方法还包括:
存储并输出所述评估结果,以提示用户所述目标应用程序与所述待评估大数据平台间的兼容程度。
另一方面,本发明实施例还提供了一种应用兼容性评估方法,应用于一Agent代理端,包括:
当目标应用程序在历史大数据平台上运行时,收集至少一个组件所加载的API信息集合,其中,所述历史大数据平台具体为部署有所述Agent代理端的大数据平台;
当接收到来自服务器的查询请求,从所述API信息集合中确定出目标组件对应的第二API信息,并将所述第二API信息发送至所述服务器,以使所述服务器将所述第二API信息与第一API信息进行对比,并获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果,其中,所述第一API信息具体为待评估大数据平台中所述目标组件对应的API信息。
可选地,当接收到来自所述服务器的操作请求,所述方法还包括:
判断所述操作请求对应的消息类别;
当所述消息类别为启动消息,获取所述启动消息中的进程名pid,向与所述进程名对应的目标组件进程中注入plugin代理程序,以使所述plugin代理程序获取所述目标组件进程在运行中加载的所述第二API信息;
将所述第二API信息存储至关系型数据库的表Agent DB中。
可选地,在所述判断所述操作请求对应的消息类别之后,所述方法还包括:
当所述消息类别为卸载消息,卸载所述目标组件进程中注入的所述plugin代理程序。
可选地,在所述判断所述操作请求对应的消息类别之后,所述方法还包括:
当所述消息类别为表征所述Agent代理端与所述服务器间正常通信的心跳消息,向所述服务器汇报所述plugin代理程序的状态信息,以使所述Agent代理端能够正常接收来自所述服务器的所述操作请求。
另一方面,本发明实施例还提供了一种应用兼容性评估装置,应用于一服务器,包括:
第一接收单元,用于接收查询请求;
第一获得单元,用于解析所述查询请求,获得待评估大数据平台中目标组件对应的第一应用程序接口API信息;
第二获得单元,用于获得目标应用程序在历史大数据平台上运行时,至少一个组件所加载的API信息集合,其中,所述历史大数据平台为部署有Agent代理端的大数据平台;
确定单元,用于从所述API信息集合中确定出与所述目标组件对应的第二API信息;
第三获得单元,用于将所述第一API信息与所述第二API信息进行对比,获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果。
可选地,所述装置还包括:
第二接收单元,用于接收操作请求;
发送单元,用于将所述操作请求发送到所述Agent代理端,以使所述Agent代理端收集所述API信息集合,并将所述API信息集合存储至关系型数据库的表Agent DB中。
可选地,在所述第三获得单元获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果之后,所述装置还包括:
提示单元,用于存储并输出所述评估结果,以提示用户所述目标应用程序与所述待评估大数据平台间的兼容程度。
另一方面,本发明实施例还提供了一种应用兼容性评估装置,应用于一Agent代理端,包括:
收集单元,当目标应用程序在历史大数据平台上运行时,收集至少一个组件所加载的API信息集合,其中,所述历史大数据平台具体为部署有所述Agent代理端的大数据平台;
处理单元,当接收到来自服务器的查询请求,从所述API信息集合中确定出目标组件对应的第二API信息,并将所述第二API信息发送至所述服务器,以使所述服务器将所述第二API信息与第一API信息进行对比,并获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果,其中,所述第一API信息具体为待评估大数据平台中所述目标组件对应的API信息。
可选地,当接收到来自所述服务器的操作请求,所述处理单元还用于:
判断所述操作请求对应的消息类别;
当所述消息类别为启动消息,获取所述启动消息中的进程名pid,向与所述进程名对应的目标组件进程中注入plugin代理程序,以使所述plugin代理程序获取所述目标组件进程在运行中加载的所述第二API信息;
将所述第二API信息存储至关系型数据库的表Agent DB中。
可选地,在所述判断所述操作请求对应的消息类别之后,所述处理单元还用于:
当所述消息类别为卸载消息,卸载所述目标组件进程中注入的所述plugin代理程序。
可选地,在所述判断所述操作请求对应的消息类别之后,所述方法还包括:
当所述消息类别为表征所述Agent代理端与所述服务器间正常通信的心跳消息,向所述服务器汇报所述plugin代理程序的状态信息,以使所述Agent代理端能够正常接收来自所述服务器的所述操作请求。
另一方面,本发明实施例还提供了一种计算机装置,所述计算机装置包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如上所述的应用兼容性评估方法的步骤。
另一方面,本发明实施例还提供了一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的应用兼容性评估方法的步骤。
本发明实施例中的上述一个或多个技术方案,至少具有如下一种或多种技术效果:
在本发明实施例的技术方案中提供了一种应用兼容性评估方法,应用于一服务器,具体来讲,接收查询请求;解析所述查询请求,获得待评估大数据平台中目标组件对应的第一应用程序接口API信息;获得目标应用程序在历史大数据平台上运行时,至少一个组件所加载的API信息集合,其中,所述历史大数据平台为部署有Agent代理端的大数据平台;从所述API信息集合中确定出与所述目标组件对应的第二API信息;将所述第一API信息与所述第二API信息进行对比,获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果。也就是说,在目标应用程序迁移至待评估大数据平台之前,对所述目标应用程序所运行的历史大数据平台与所述待评估大数据平台间的API信息间的差异性进行评估,进一步地确定出所述目标应用程序与所述待评估大数据平台间的兼容性。从而解决了现有技术中存在的应用程序迁移至目标大数据平台的代价较高的技术问题,降低了应用程序迁移至目标大数据平台的代价。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例。
图1为本发明实施例中服务器Server的结构示意图;
图2为本发明实施例中Agent代理端的结构示意图;
图3为本发明实施例一中提供的一种应用兼容性评估方法的方法流程图;
图4为本发明实施例一中提供的一种应用兼容性评估方法中在确定请求类别之后的另外一种方法流程图;
图5为本发明实施例一中提供的一种应用兼容性评估方法中服务器Server的运行流程示意图;
图6为本发明实施例一中提供的一种应用兼容性评估方法中Tool模块的处理过程示意图;
图7为本发明实施例二提供的一种应用兼容性评估方法的方法流程图;
图8为本发明实施例二中提供的一种应用兼容性评估方法中当Agent代理端接收到来自服务器的操作请求时还包括的方法流程图;
图9为本发明实施例二中提供的一种应用兼容性评估方法中Agent代理端的运行流程示意图;
图10为本发明实施例三提供的一种应用兼容性评估装置的结构示意图;
图11为本发明实施例四提供的一种应用兼容性评估装置的结构示意图。
具体实施方式
本发明实施例提供一种应用兼容性评估的方法和装置,用于解决现有技术中存在应用程序迁移至目标大数据平台的代价较高的技术问题,降低了应用程序迁移至目标大数据平台的代价。
本发明实施例中的技术方案为解决上述的技术问题,总体思路如下:
一种应用兼容性评估方法,应用于一服务器,包括:
接收查询请求;
解析所述查询请求,获得待评估大数据平台中目标组件对应的第一应用程序接口API信息;
获得目标应用程序在历史大数据平台上运行时,至少一个组件所加载的API信息集合,其中,所述历史大数据平台为部署有Agent代理端的大数据平台;
从所述API信息集合中确定出与所述目标组件对应的第二API信息;
将所述第一API信息与所述第二API信息进行对比,获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果。
在本发明实施例的技术方案中提供了一种应用兼容性评估方法,应用于一服务器,具体来讲,接收查询请求;解析所述查询请求,获得待评估大数据平台中目标组件对应的第一应用程序接口API信息;获得目标应用程序在历史大数据平台上运行时,至少一个组件所加载的API信息集合,其中,所述历史大数据平台为部署有Agent代理端的大数据平台;从所述API信息集合中确定出与所述目标组件对应的第二API信息;将所述第一API信息与所述第二API信息进行对比,获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果。也就是说,在目标应用程序迁移至待评估大数据平台之前,对所述目标应用程序所运行的历史大数据平台与所述待评估大数据平台间的API信息间的差异性进行评估,进一步地确定出所述目标应用程序与所述待评估大数据平台间的兼容性。从而解决了现有技术中存在的应用程序迁移至目标大数据平台的代价较高的技术问题,降低了应用程序迁移至目标大数据平台的代价。
本发明的说明书和权利要求书及上述附图中的“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本人中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了更好的理解上述技术方案,下面通过附图以及具体实施例对本发明技术方案做详细的说明,应当理解本发明实施例以及实施例中的具体特征是对本发明技术方案的详细的说明,而不是对本发明技术方案的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互结合。
在介绍本发明实施例中的技术方案之前,首先,对本发明提出的在将目标应用程序迁移至待评估大数据平台之前,对所述目标应用程序与所述待评估大数据平台间兼容性进行评估的系统进行简要的介绍。
系统主要包括服务器Server和Agent代理端两部分。
第一部分:Sever服务器
如图1所示,Server包括Web模块、AgentTrackerService模块、Tool模块。
其中,Web模块:负责接收用户从浏览器或客户端发出的请求并返回请求处理结果,请求的处理过程将根据请求的类型,被分别转发到AgentTrackerService模块和Tool模块中来进行处理。
AgentTrackerService模块:接收来自Web模块的操作请求,AgentTrackerService模块同时通过RPC(Remote Procedure Call,远程过程调用)与Agent代理端进行心跳交互。
Tool模块:使用revapi工具根据关系型数据库的表Agent DB中的内容选择对应组件的类进行对比,最后通过对比的结果生成评估结果,然后将评估结果保存到诸如图1中所示的Result DB数据库(比如,数据库名称为Result DB的数据库)并返回结果到Web模块。其中,关系型数据库是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。比如,Oracle、DB2、PostgreSQL、MicrosoftAcess、MySQL,等等。
在具体实施过程中,Server三个模块间的交互过程具体为,Web模块接收查询请求,转发给Tool模块,进行查询的处理;通过Tool模块生成评估结果,将评估结果返回到Web模块以提示用户应用程序与当前大数据平台间的兼容性,并将评估结果相应地保存在数据库中。此外,当Web模块接收到操作请求,将该操作请求转发给AgentTrackerService模块,AgentTrackerService模块通过RPC与Agent代理端通信发送Plugin操作命令,实现包括启动、卸载plugin等操作。
第二部分:Agent代理端
如图2所示,Agent代理端部署在历史大数据平台对应集群的每一台主机上,包括AgentStatus Updater模块、PluginManager模块、Plugin模块、关系型数据库。
其中,AgentStatus Updater模块:一方面,可以通过心跳向Server汇报plugin等状态信息;另一方面,还可以接收Server发送过来的Plugin操作命令,包括启动、卸载plugin(插件,一种计算机应用程序)等操作,并可以将这些操作交给PluginManager来执行。
PluginManager模块:定时查询Plugin的状态信息,并返回结果给AgentStatusUpdater模块;此外,还可以根据启动或卸载plugin操作命令的请求参数,实现对集群机器JVM的目标组件进程中添加或卸载plugin代理程序。
Plugin模块:运行在每个集群机器JVM的目标组件进程中,plugin代理程序是由JDK(Java Development Kit,是Java语言的软件开发工具包)提供的基于JVMTIAgent(JVMTool Interface,是Java虚拟机所提供的native编程接口)实现的javaAgent代理程序(即plugin代理程序)。该Plugin模块用于获取应用程序的运行状态(比如,调用的类、方法等)。此外,还可以将获取的数据(比如,调用的类、方法等)写到关系型数据库的表Agent DB中。
关系型数据库:用于存放各个目标进程在运行时集群机器JVM加载的API信息,加载的类、调用的方法,等。
在具体实施过程中,对应用兼容性进行评估的系统运行的主要流程主要包括两个部分:第一个部分是Agent运行流程,Agent模块向集群机器JVM(Java Virtual Machine)目标组件进程注入plugin代理程序,收集目标组件进程在运行过程中加载的类和调用的方法名等;第二个部分是使用对比工具将第一个部分得到的加载的类和方法与需要比对的大数据平台组件中的对应的类和方法进行对比,得出评估结果。
下面,对本发明中提供应用兼容性评估方法的具体实现过程进行详细的解释说明。
实施例一
请参考图3,本发明实施例一提供了一种应用兼容性评估方法,应用于一服务器,包括:
S101:接收查询请求;
S102:解析所述查询请求,获得待评估大数据平台中目标组件对应的第一应用程序接口API信息;
S103:获得目标应用程序在历史大数据平台上运行时,至少一个组件所加载的API信息集合,其中,所述历史大数据平台为部署有Agent代理端的大数据平台;
S104:从所述API信息集合中确定出与所述目标组件对应的第二API信息;
S105:将所述第一API信息与所述第二API信息进行对比,获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果。
在具体实施过程中,步骤S101至步骤S105的具体实现过程如下:
首先,Server接收查询请求,比如,接收来自浏览器或客户端对组件Spark的查询请求;然后,解析所述查询请求,获得待评估大数据平台中目标组件对应的第一应用程序接口API信息。其中,所述第一API信息可以是包括大数据平台的厂商、版本信息和需要对比的组件信息,等等。比如,在所述目标组件为Spark时,Server接收来自浏览器对Spark组件的查询请求,进一步地对该查询请求进行解析,从而获得待评估大数据平台中需要对比的目标组件为Spark组件,版本信息,比如,版本为2.3.0。
此外,目标应用程序可以在历史大数据平台上运行,其中,所述历史大数据平台为部署有Agent代理端的大数据平台(其中,只有大数据平台对应的集群节点中已正确部署Agent代理端,该大数据平台才可以正常运行大数据应用程序),即所述目标应用程序为可在大数据平台上运行的任一大数据应用程序。当所述目标应用程序在所述历史大数据平台上运行,Server获得至少一个组件所加载的API信息集合,其中,所述API信息集合包括Spark组件所加载的API信息,hadoop组件所加载的API信息,hive组件所加载的API信息,等等。
在确定评估系统要对所述历史大数据平台与所述待评估大数据平台间的API信息的差异性进行评估时,从所述API信息集合中确定出与所述目标组件对应的第二API信息。比如,从所述API信息集合中确定出与Spark组件对应的厂商、版本信息、加载的类、调用的方法,等API信息。
然后,将所述第一API信息与所述第二API信息进行对比,获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果。也就是说,通过Agent代理端将所述目标应用程序在所述历史大数据平台上运行时,各组件进程类加载的动态监控和记录,进而确定所述API信息集合,将所述API信息集合作为所述历史大数据平台实际调用的API信息的依据。比如,当目标应用程序a在可兼容的大数据平台(即历史大数据平台)A上运行,记录实际记载的API信息,将这些API信息与所述待评估大数据平台上的API信息进行差异性对比,进而确定目标应用程序a与所述待评估大数据平台间的兼容性。
此外,在本发明实施例中,在步骤S101之前还包括步骤:接收请求,然后,对该请求的请求类别进行判断,在确定请求类别之后,为了进一步提高评估系统的使用性能,请参考图4,所述方法还包括:
S201:接收操作请求;
S202:将所述操作请求发送到所述Agent代理端,以使所述Agent代理端收集所述API信息集合,并将所述API信息集合存储至关系型数据库的表Agent DB中。
在具体实施过程中,步骤S201至步骤S202的具体实现过程如下:
首先,当接收到的请求为操作请求,则将所述操作请求发送到所述历史大数据平台对应集群中各个主机中的所述Agent代理端,以使所述Agent代理端收集所述API信息集合,并将所述API信息集合存储至关系型数据库的表Agent DB中,也就是说,当接收到的请求类别为操作请求,则将请求发送给所述Agent代理端,由关系型数据库记录,并具体存储至该关系型数据库的表Agent DB中。
在本发明实施例中,为了进一步提高评估系统的使用性能,在步骤S105之后,所述方法还包括:存储并输出所述评估结果,以提示用户所述目标应用程序与所述待评估大数据平台间的兼容程度。也就是说,将用于表征所述目标应用程序与所述待评估大数据平台间兼容性的所述评估结果存储起来,当再次将所述目标应用程序与所述待评估大数据平台间进行兼容性评估时,基于已存储的评估结果无需再次评估,极大地提高了评估系统的使用性能。此外,为了进一步地提高评估使用性能,在确定出用于表征所述目标应用程序与所述待评估大数据平台间的评估结果之后,将所述评估结果经浏览器或客户端输出并显示出来,从而提示用户所述目标应用程序与所述待评估大数据平台间的兼容程度。
也就是说,在本发明实施例中,Server主要功能为接收请求,根据不同的请求做出不同的处理,最后将处理结果返回给浏览器或客户端。具体流程如图5所示,具体来讲,Server通过web模块接收来自浏览器或客户端的请求,然后web模块根据请求的不同类别做出不同的处理。
若请求类别为查询请求,将每次接收到的查询请求转发到Tool模块的任务队列;依照处理时间的先后顺序处理任务队列中的查询请求,然后根据查询请求使用revapi工具对比相应的API信息,对比的内容包括类,及类中的方法。然后,生成用于表征目标应用程序与所述待评估大数据平台间的兼容性的评估结果。
在具体实施过程中,Tool模块的具体处理过程如图6所示,Tool模块从任务队列中取出一个查询请求,解析该查询请求中所携带的需要进行兼容性评估的待评估大数据平台的诸如厂商、版本信息和组件信息;根据获得的组件信息,从关系型数据库中找出与所述目标应用程序兼容的历史大数据平台中对应组件,以及所对应组件的API信息。然后,使用revapi工具将查询请求中指定的目标组件的API信息(比如,类和方法),与目标应用程序实际运行在可兼容的历史大数据平台过程中对应组件所加载的API信息进行对比;即,实现了使用revapi工具对比两个大数据平台的组件中在上述结果范围内相同的JAVA类的差异情况,并生成评估结果。然后,将评估结果保存到诸如mysql数据库中,在后续Server再次接收到目标应用程序与该待评估平台间的兼容性评估的查询请求时,无需再次进行评估,有效提高了评估效率。
此外,在具体实施过程中,还可以将评估结果返回至用户,对用户进行有效的提示说明,从而提前提醒用户要将所述目标应用程序迁移到所述待评估大数据平台时可能带来的代价,进一步地避免了将所述目标应用程序迁移到所述待评估大数据平台所导致的代价。
此外,在具体实施过程中,当请求类别为操作请求,将操作请求转发到AgentTrackerService模块,然后,AgentTracker Service模块接收到Agent操作请求后,通过RPC与保持心跳的Agent代理端进行通信,并告知Agent代理端所需进行的操作(启动或卸载plugin代理程序),进一步地,Agent代理端向集群机器JVM中目标进程注入javaagent(即plugin代理程序)代理程序,进而收集该目标进程在运行过程中加载的类和调用的方法名等。
实施例二
基于与本发明实施例一同样的发明构思,请参考图7,本发明实施例二还提供了一种应用兼容性评估方法,应用于一Agent代理端,包括:
S301:当目标应用程序在历史大数据平台上运行时,收集至少一个组件所加载的API信息集合,其中,所述历史大数据平台具体为部署有所述Agent代理端的大数据平台;
S302:当接收到来自服务器的查询请求,从所述API信息集合中确定出目标组件对应的第二API信息,并将所述第二API信息发送至所述服务器,以使所述服务器将所述第二API信息与第一API信息进行对比,并获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果,其中,所述第一API信息具体为待评估大数据平台中所述目标组件对应的API信息。
在具体实施过程中,对于步骤S301至步骤S302的具体实现过程已在Server的工作流程中进行了详细的解释说明,在此就不再赘述了。
在本发明实施例中,为了提高评估系统的使用性能,请参考图8,当所述Agent代理端接收到来自所述服务器的操作请求,所述方法还包括:
S401:判断所述操作请求对应的消息类别;
S402:当所述消息类别为启动消息,获取所述启动消息中的进程名pid,向与所述进程名对应的目标组件进程中注入plugin代理程序,以使所述plugin代理程序获取所述目标组件进程在运行中加载的所述第二API信息;
S403:将所述第二API信息存储至关系型数据库的表Agent DB中。
在具体实施过程中,步骤S401至步骤S403的具体实现过程如下:
首先,判断所述操作请求对应的消息类别;当所述消息类别为启动消息,获取所述启动消息中的进程名pid,其中,所述pid具体为process id,用于唯一标识进程的数值,进而能够根据pid确定进程名。然后,向与所述进程名对应的目标组件进程中注入plugin代理程序,以使所述plugin代理程序获取所述目标组件进程在运行中加载的所述第二API信息;比如,PluginManager模块根据所述启动消息中目标组件进程名称,获取进程pid,然后,采用agentmain方式动态地向目标组件进程中注入使用javaagent技术实现的plugin代理程序;然后,将所述第二API信息存储至关系型数据库的表Agent DB中。然后,所述plugin代理程序通过传入Instrumentation实例获取当前评估系统中已经加载的类,生成调用类结果,最后将结果保存到关系型数据库中。
在本发明实施例中,在所述判断所述操作请求对应的消息类别之后,所述方法还包括:当所述消息类别为卸载消息,卸载所述目标组件进程中注入的所述plugin代理程序。比如,AgentStatusUpdater模块接收来自Server的卸载消息,则通知PluginManager执行卸载,卸载过程中可以使用Java Hotswap技术执行对注入JVM目标进程中plugin代理程序的卸载。
此外,在本发明实施例中,为了进一步地提高评估系统的使用性能,在所述判断所述操作请求对应的消息类别之后,所述方法还包括:当所述消息类别为表征所述Agent代理端与所述服务器间正常通信的心跳消息,向所述服务器汇报所述plugin代理程序的状态信息,以使所述Agent代理端能够正常接收来自所述服务器的所述操作请求。
在具体实施过程中,所述Agent代理端的运行流程如图9所示。具体来讲,首先,历史大数据平台的集群中的每个集群节点中已经正确部署Agent代理端,集群可以正常运行大数据应用程序;AgentStatusUpdater模块接收来自Server中AgentTrackerServic模块的操作指令(操作请求所对应的指令),并调用PluginManager模块实现对plugin代理程序的启动和卸载。具体来讲,当AgentStatusUpdater模块接收来自Server中AgentTrackerServic模块的启动消息,通知AgentManager模块执行启动,AgentManager模块根据启动消息中的目标进程名称获取进程pid,采用agentmain方式动态地向目标进程中注入使用javaagent技术实现的plugin代理程序。然后,plugin代理程序提供agentmain方法,通过传入Instrumentation实例获取当前系统中已经加载的类,生成调用类结果,最后将结果保存到关系型数据库中。
此外,在具体实施过程中,当AgentStatusUpdater模块接收来自Server中AgentTrackerServic模块的卸载消息,通知AgentManager模块执行卸载,卸载过程中使用Java Hotswap技术执行对注入到JVM目标进程中plugin代理程序进行卸载。
实施例三
基于与本发明实施例一同样的发明构思,请参考图10,本发明实施例三还提供了一种应用兼容性评估装置,应用于一服务器,包括:
第一接收单元10,用于接收查询请求;
第一获得单元20,用于解析所述查询请求,获得待评估大数据平台中目标组件对应的第一应用程序接口API信息;
第二获得单元30,用于获得目标应用程序在历史大数据平台上运行时,至少一个组件所加载的API信息集合,其中,所述历史大数据平台为部署有Agent代理端的大数据平台;
确定单元40,用于从所述API信息集合中确定出与所述目标组件对应的第二API信息;
第三获得单元50,用于将所述第一API信息与所述第二API信息进行对比,获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果。
在本发明实施例中,所述装置还包括:
第二接收单元,用于接收操作请求;
发送单元,用于将所述操作请求发送到所述Agent代理端,以使所述Agent代理端收集所述API信息集合,并将所述API信息集合存储至关系型数据库的表Agent DB中。
在本发明实施例中,在所述第三获得单元获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果之后,所述装置还包括:
提示单元,用于存储并输出所述评估结果,以提示用户所述目标应用程序与所述待评估大数据平台间的兼容程度。
实施例四
基于与实施例二同样的发明构思,请参考图11,本发明实施例四还提供了一种应用兼容性评估装置,应用于一Agent代理端,包括:
收集单元60,当目标应用程序在历史大数据平台上运行时,收集至少一个组件所加载的API信息集合,其中,所述历史大数据平台具体为部署有所述Agent代理端的大数据平台;
处理单元70,当接收到来自服务器的查询请求,从所述API信息集合中确定出目标组件对应的第二API信息,并将所述第二API信息发送至所述服务器,以使所述服务器将所述第二API信息与第一API信息进行对比,并获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果,其中,所述第一API信息具体为待评估大数据平台中所述目标组件对应的API信息。
在本发明实施例中,当接收到来自所述服务器的操作请求,处理单元70还用于:
判断所述操作请求对应的消息类别;
当所述消息类别为启动消息,获取所述启动消息中的进程名pid,向与所述进程名对应的目标组件进程中注入plugin代理程序,以使所述plugin代理程序获取所述目标组件进程在运行中加载的所述第二API信息;
将所述第二API信息存储至关系型数据库的表Agent DB中。
在本发明实施例中,在所述判断所述操作请求对应的消息类别之后,处理单元70还用于:
当所述消息类别为卸载消息,卸载所述目标组件进程中注入的所述plugin代理程序。
在本发明实施例中,在所述判断所述操作请求对应的消息类别之后,所述方法还包括:
当所述消息类别为表征所述Agent代理端与所述服务器间正常通信的心跳消息,向所述服务器汇报所述plugin代理程序的状态信息,以使所述Agent代理端能够正常接收来自所述服务器的所述操作请求。
本发明实施例的又一方面提供了一种计算机装置,所述计算机装置包括处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,例如:接收查询请求;解析所述查询请求,获得待评估大数据平台中目标组件对应的第一应用程序接口API信息;获得目标应用程序在历史大数据平台上运行时,至少一个组件所加载的API信息集合,其中,所述历史大数据平台为部署有Agent代理端的大数据平台;从所述API信息集合中确定出与所述目标组件对应的第二API信息;将所述第一API信息与所述第二API信息进行对比,获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果。所述处理器执行所述计算机程序时实现上述各方面所述的方法实施例中的步骤,例如图3所示的方法步骤。或者,所述处理器执行所述计算机程序时实现上述各装置实施例中各单元的功能。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器中,并由所述处理器执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述应用兼容性评估装置/服务器中的执行过程。例如,所述计算机程序可以被分割成第一接收单元,第一获得单元,第二获得单元,确定单元,第三获得单元,各模块具体功能如下:第一接收单元,用于接收查询请求;第一获得单元,用于解析所述查询请求,获得待评估大数据平台中目标组件对应的第一应用程序接口API信息;第二获得单元,用于获得目标应用程序在历史大数据平台上运行时,至少一个组件所加载的API信息集合,其中,所述历史大数据平台为部署有Agent代理端的大数据平台;确定单元,用于从所述API信息集合中确定出与所述目标组件对应的第二API信息;第三获得单元,用于将所述第一API信息与所述第二API信息进行对比,获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果。
所述应用兼容性评估装置/服务器可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述应用兼容性评估装置/服务器可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,所述示意图仅仅是所述应用兼容性评估装置/服务器的示例,并不构成对所述应用兼容性评估装置/服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述应用兼容性评估装置/服务器还可以包括输入输出设备、网络接入设备、总线等。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述应用兼容性评估装置/服务器的控制中心,利用各种接口和线路连接整个所述应用兼容性评估装置/服务器的各个部分。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述应用兼容性评估装置/服务器的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
本发明实施例的又一方面提供了一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述各方面所述的应用兼容性评估方法的步骤。
所述应用兼容性评估装置/服务器集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
在本发明实施例的技术方案中提供了一种应用兼容性评估方法,应用于一服务器,具体来讲,接收查询请求;解析所述查询请求,获得待评估大数据平台中目标组件对应的第一应用程序接口API信息;获得目标应用程序在历史大数据平台上运行时,至少一个组件所加载的API信息集合,其中,所述历史大数据平台为部署有Agent代理端的大数据平台;从所述API信息集合中确定出与所述目标组件对应的第二API信息;将所述第一API信息与所述第二API信息进行对比,获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果。也就是说,在目标应用程序迁移至待评估大数据平台之前,对所述目标应用程序所运行的历史大数据平台与所述待评估大数据平台间的API信息间的差异性进行评估,进一步地确定出所述目标应用程序与所述待评估大数据平台间的兼容性。从而解决了现有技术中存在的应用程序迁移至目标大数据平台的代价较高的技术问题,降低了应用程序迁移至目标大数据平台的代价。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (11)
1.一种应用兼容性评估方法,应用于一服务器,其特征在于,包括:
接收查询请求;
解析所述查询请求,获得待评估大数据平台中目标组件对应的第一应用程序接口API信息;
获得目标应用程序在历史大数据平台上运行时,至少一个组件所加载的API信息集合,其中,所述历史大数据平台为部署有Agent代理端的大数据平台;
从所述API信息集合中确定出与所述目标组件对应的第二API信息;
将所述第一API信息与所述第二API信息进行对比,获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
接收操作请求;
将所述操作请求发送到所述Agent代理端,以使所述Agent代理端收集所述API信息集合,并将所述API信息集合存储至关系型数据库的表Agent DB中。
3.如权利要求1所述的方法,其特征在于,在所述获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果之后,所述方法还包括:
存储并输出所述评估结果,以提示用户所述目标应用程序与所述待评估大数据平台间的兼容程度。
4.一种应用兼容性评估方法,应用于一Agent代理端,其特征在于,包括:
当目标应用程序在历史大数据平台上运行时,收集至少一个组件所加载的API信息集合,其中,所述历史大数据平台具体为部署有所述Agent代理端的大数据平台;
若接收到来自服务器的查询请求,从所述API信息集合中确定出目标组件对应的第二API信息,并将所述第二API信息发送至所述服务器,以使所述服务器将所述第二API信息与第一API信息进行对比,并获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果,其中,所述第一API信息具体为待评估大数据平台中所述目标组件对应的API信息。
5.如权利要求4所述的方法,其特征在于,若接收到来自所述服务器的操作请求,所述方法还包括:
判断所述操作请求对应的消息类别;
若所述消息类别为启动消息,获取所述启动消息中的进程名pid,向与所述进程名对应的目标组件进程中注入plugin代理程序,以使所述plugin代理程序获取所述目标组件进程在运行中加载的所述第二API信息;
将所述第二API信息存储至关系型数据库的表Agent DB中。
6.如权利要求5所述的方法,其特征在于,在所述判断所述操作请求对应的消息类别之后,所述方法还包括:
若所述消息类别为卸载消息,卸载所述目标组件进程中注入的所述plugin代理程序。
7.如权利要求5所述的方法,其特征在于,在所述判断所述操作请求对应的消息类别之后,所述方法还包括:
若所述消息类别为表征所述Agent代理端与所述服务器间正常通信的心跳消息,向所述服务器汇报所述plugin代理程序的状态信息,以使所述Agent代理端能够正常接收来自所述服务器的所述操作请求。
8.一种应用兼容性评估装置,应用于一服务器,其特征在于,包括:
第一接收单元,用于接收查询请求;
第一获得单元,用于解析所述查询请求,获得待评估大数据平台中目标组件对应的第一应用程序接口API信息;
第二获得单元,用于获得目标应用程序在历史大数据平台上运行时,至少一个组件所加载的API信息集合,其中,所述历史大数据平台为部署有Agent代理端的大数据平台;
确定单元,用于从所述API信息集合中确定出与所述目标组件对应的第二API信息;
第三获得单元,用于将所述第一API信息与所述第二API信息进行对比,获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果。
9.一种应用兼容性评估装置,应用于一Agent代理端,其特征在于,包括:
收集单元,当目标应用程序在历史大数据平台上运行时,收集至少一个组件所加载的API信息集合,其中,所述历史大数据平台具体为部署有所述Agent代理端的大数据平台;
处理单元,当接收到来自服务器的查询请求,从所述API信息集合中确定出目标组件对应的第二API信息,并将所述第二API信息发送至所述服务器,以使所述服务器将所述第二API信息与第一API信息进行对比,并获得用于表征所述目标应用程序与所述待评估大数据平台间兼容性的评估结果,其中,所述第一API信息具体为待评估大数据平台中所述目标组件对应的API信息。
10.一种计算机装置,其特征在于,所述计算机装置包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1-3或4-7中任意一项所述的应用兼容性评估方法的步骤。
11.一种可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现如权利要求1-3或4-7中任意一项所述的应用兼容性评估方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810133579.7A CN110134498A (zh) | 2018-02-09 | 2018-02-09 | 一种应用兼容性评估方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810133579.7A CN110134498A (zh) | 2018-02-09 | 2018-02-09 | 一种应用兼容性评估方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110134498A true CN110134498A (zh) | 2019-08-16 |
Family
ID=67567728
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810133579.7A Pending CN110134498A (zh) | 2018-02-09 | 2018-02-09 | 一种应用兼容性评估方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110134498A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111541743A (zh) * | 2020-04-08 | 2020-08-14 | 北京智能工场科技有限公司 | 一种多api集成整合的方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101727385A (zh) * | 2008-10-31 | 2010-06-09 | 国际商业机器公司 | 用于处理用户接口信息变化的方法和系统 |
US20120259793A1 (en) * | 2011-04-08 | 2012-10-11 | Computer Associates Think, Inc. | Transaction Model With Structural And Behavioral Description Of Complex Transactions |
CN103198011A (zh) * | 2012-01-09 | 2013-07-10 | 阿里巴巴集团控股有限公司 | 一种探测java 程序文件扰动的方法及装置 |
CN104753874A (zh) * | 2013-12-25 | 2015-07-01 | 腾讯数码(天津)有限公司 | 实现Hadoop兼容性的方法和装置 |
US9678728B1 (en) * | 2012-03-29 | 2017-06-13 | Emc International Company | Version compatibility |
CN107301126A (zh) * | 2017-06-21 | 2017-10-27 | 努比亚技术有限公司 | 应用接口检测方法、设备和计算机可读存储介质 |
CN107341106A (zh) * | 2017-06-21 | 2017-11-10 | 努比亚技术有限公司 | 应用程序兼容性检测方法、开发终端及存储介质 |
-
2018
- 2018-02-09 CN CN201810133579.7A patent/CN110134498A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101727385A (zh) * | 2008-10-31 | 2010-06-09 | 国际商业机器公司 | 用于处理用户接口信息变化的方法和系统 |
US20120259793A1 (en) * | 2011-04-08 | 2012-10-11 | Computer Associates Think, Inc. | Transaction Model With Structural And Behavioral Description Of Complex Transactions |
CN103198011A (zh) * | 2012-01-09 | 2013-07-10 | 阿里巴巴集团控股有限公司 | 一种探测java 程序文件扰动的方法及装置 |
US9678728B1 (en) * | 2012-03-29 | 2017-06-13 | Emc International Company | Version compatibility |
CN104753874A (zh) * | 2013-12-25 | 2015-07-01 | 腾讯数码(天津)有限公司 | 实现Hadoop兼容性的方法和装置 |
CN107301126A (zh) * | 2017-06-21 | 2017-10-27 | 努比亚技术有限公司 | 应用接口检测方法、设备和计算机可读存储介质 |
CN107341106A (zh) * | 2017-06-21 | 2017-11-10 | 努比亚技术有限公司 | 应用程序兼容性检测方法、开发终端及存储介质 |
Non-Patent Citations (2)
Title |
---|
MUHAMMAD ASADUZZAMAN等: "Exploring API method parameter recommendations", 《2015 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION》 * |
徐祝庆: "OpenVG代码自动生成与跨平台仿真系统的设计与实现", 《中国优秀硕士学位论文全文数据库信息科技辑(月刊)》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111541743A (zh) * | 2020-04-08 | 2020-08-14 | 北京智能工场科技有限公司 | 一种多api集成整合的方法 |
CN111541743B (zh) * | 2020-04-08 | 2021-04-20 | 北京智能工场科技有限公司 | 一种多api集成整合的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110162345B (zh) | 一种应用程序访问方法、装置和存储介质 | |
US20190324772A1 (en) | Method and device for processing smart contracts | |
US8117601B2 (en) | Internal test and manipulation of an application | |
CN111897724B (zh) | 一种适用于云平台的自动化测试方法及装置 | |
CN107423213B (zh) | 一种文件描述符分配检测方法和装置 | |
CN104516809B (zh) | 一种自动化测试系统及方法 | |
CN110308980A (zh) | 数据的批量处理方法、装置、设备及存储介质 | |
CN110213092A (zh) | 混合云的资源访问方法、平台管理设备、存储介质及装置 | |
CN109947627A (zh) | 一种基于资源调用链的多层云应用监视诊断方法 | |
CN108287648A (zh) | 软件的反馈管理方法、装置、电子设备和计算机存储介质 | |
CN112313627A (zh) | 事件到无服务器函数工作流实例的映射机制 | |
US7577541B1 (en) | Test services provider | |
CN109324872B (zh) | 一种对虚拟机改变的请求进行验证的方法和系统 | |
CN112559525B (zh) | 数据检查系统、方法、装置和服务器 | |
CN110134498A (zh) | 一种应用兼容性评估方法及装置 | |
CN110262782A (zh) | 软件系统的接口比对方法和装置 | |
CN109634838A (zh) | 定位应用程序故障的方法、装置、存储介质和电子设备 | |
CN111082964B (zh) | 一种配置信息的分发方法和装置 | |
CN116340159A (zh) | 回归测试用例推荐方法、系统、设备及存储介质 | |
CN115617668A (zh) | 一种兼容性测试方法、装置及设备 | |
CN114168439A (zh) | 一种集群内服务的压测控制方法、装置、存储介质及终端 | |
CN108920217B (zh) | 一种减少不可重入函数的重构方法 | |
US8549537B2 (en) | Middleware bridge system and method | |
CN110321175B (zh) | 一种控制器初始化方法及相关装置 | |
CN109308256A (zh) | 一种java程序动态分析方法、设备和存储介质 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190816 |