CN110032454A - 远程调用方法、系统和相关设备及计算机可读存储介质 - Google Patents

远程调用方法、系统和相关设备及计算机可读存储介质 Download PDF

Info

Publication number
CN110032454A
CN110032454A CN201810029472.8A CN201810029472A CN110032454A CN 110032454 A CN110032454 A CN 110032454A CN 201810029472 A CN201810029472 A CN 201810029472A CN 110032454 A CN110032454 A CN 110032454A
Authority
CN
China
Prior art keywords
information
simulator
services
calling device
sent
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
CN201810029472.8A
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.)
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology 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 Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201810029472.8A priority Critical patent/CN110032454A/zh
Publication of CN110032454A publication Critical patent/CN110032454A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • 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
    • 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/133Protocols for remote procedure calls [RPC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Abstract

本发明公开了一种远程调用方法、系统和相关设备及计算机可读存储介质,涉及计算机领域。远程调用方法包括:模拟装置获取调用装置发送的开启模拟对象功能的请求;模拟装置将模拟对象的服务信息发送给管理平台,以便管理平台将服务信息与调用装置发送的消费信息进行匹配、并将服务信息发送给调用装置;模拟装置接受调用装置对模拟对象的调用,其中,调用是根据消费信息和匹配的服务信息发起的;模拟装置向调用装置返回调用结果。通过采用模拟装置主动获取调用装置的信息并发送给管理平台,使得调用装置在进行调用时直接从管理平台获取模拟对象的地址以进行调用,从而无需修改调用装置的配置文件,提高了调试效率和开发效率。

Description

远程调用方法、系统和相关设备及计算机可读存储介质
技术领域
本发明涉及计算机领域,特别涉及一种远程调用方法、系统和相关设备及计算机可读存储介质。
背景技术
随着互联网的发展,互联网公司的研发系统和设备也成倍地增长,其提供的各种服务可能部署在不同的设备上,由不同的团队进行开发进和运维。在这种场景下,往往采用远程调用协议进行开发,从而对测试人员提出了新的挑战。
为了进行跨团队无缝测试,在相关技术中可以利用模拟(Mock)方法。模拟对象(Mock Object,一般称作Mock对象)具有和要模拟的真实对象的相同接口,可以让调用该接口的对象调用模拟对象。然而,在现有技术中,需要服务提供方完成开发、服务调用方才可以调用服务以进行调试和测试。并且在进行服务调用时,需要技术人员手动修改服务调用方的配置文件,使调用方的接口与Mock对象的地址信息匹配,否则调用方无法与Mock对象进行连接。
因而现有技术的方法在服务提供方未完成开发的情况下无法进行调试;并且即使服务提供方完成了开发,调试效率也比较低。从而降低了项目的开发效率。
发明内容
本发明实施例所要解决的一个技术问题是:如何提高开发效率。
根据本发明一些实施例的第一个方面,提供一种远程调用方法,包括:模拟装置获取调用装置发送的开启模拟对象功能的请求;模拟装置将模拟对象的服务信息发送给管理平台,以便管理平台将服务信息与调用装置发送的消费信息进行匹配、并将服务信息发送给调用装置;模拟装置接受调用装置对模拟对象的调用,其中,调用是根据消费信息和匹配的服务信息发起的;模拟装置向调用装置返回调用结果。
在一些实施例中,模拟装置根据调用请求中的参数和预设的返回报文模板,向调用装置返回调用结果,其中,返回报文模板包括参数与调用结果之间的对应关系。
在一些实施例中,模拟装置采用真实的服务提供者使用的返回报文格式向调用装置返回调用结果。
在一些实施例中,模拟装置向管理平台发送模拟对象的注册信息,其中,注册信息中包括模拟对象的服务信息。
在一些实施例中,模拟装置将模拟对象的服务信息发送给管理平台包括:模拟装置实例化模拟对象,生成模拟对象的服务信息;模拟装置根据预设的注册报文模板生成包括注册信息的注册报文,其中,注册报文模板与真实的服务提供者使用的注册报文具有相同的报文格式,注册信息包括模拟对象的服务信息;模拟装置与管理平台建立连接;模拟装置将生成的注册报文通过建立的连接发送给管理平台,以便模拟对象注册到管理平台。
在一些实施例中,远程调用方法还包括:模拟装置根据预设的心跳报文模板生成心跳报文,其中,心跳报文模板与真实的服务提供者使用的心跳报文具有相同的报文格式;模拟装置向管理平台发送生成的心跳报文。
在一些实施例中,远程调用方法还包括:模拟装置获取调用装置关闭模拟对象功能的请求;模拟装置通知管理平台模拟对象功能关闭,以便管理平台响应于调用装置的请求、将真实的服务提供者的服务信息发送给调用装置。
根据本发明一些实施例的第二个方面,提供一种远程调用方法,包括:管理平台接收模拟装置发送的模拟对象的服务信息,其中,服务信息是响应于模拟装置获取调用装置发送的开启模拟对象功能的请求而发送的;管理平台将服务信息与调用装置发送的消费信息进行匹配、并将服务信息发送给调用装置,以便调用装置根据消费信息和匹配的服务信息调用模拟对象。
在一些实施例中,管理平台接收模拟装置发送的模拟对象的注册信息,其中,注册信息中包括模拟对象的服务信息。
在一些实施例中,管理平台与模拟装置建立连接;管理平台接收模拟装置发送的注册报文,其中,注册报文是模拟装置实例化模拟对象并生成模拟对象的服务信息后,根据预设的注册报文模板生成的,注册报文模板与真实的服务提供者使用的注册报文具有相同的报文格式,注册信息包括模拟对象的服务信息。
在一些实施例中,远程调用方法还包括:管理平台接收模拟装置发送的心跳报文,其中,心跳报文是模拟装置根据预设的心跳报文模板生成的,心跳报文模板与真实的服务提供者使用的心跳报文具有相同的报文格式。
在一些实施例中,远程调用方法还包括:管理平台获取模拟装置发送的管理平台模拟对象功能关闭的通知,其中,通知是响应于模拟装置获取调用装置发送的关闭模拟对象功能的请求而发送的;管理平台响应于调用装置的请求、将真实的服务提供者的服务信息发送给调用装置。
根据本发明实施例的第三个方面,提供一种模拟装置,包括:请求获取模块,用于获取调用装置发送的开启模拟对象功能的请求;服务信息发送模块,用于将模拟对象的服务信息发送给管理平台,以便管理平台将服务信息与调用装置发送的消费信息进行匹配、并将服务信息发送给调用装置;调用接收模块,用于接受调用装置对模拟对象的调用,其中,调用是根据消费信息和匹配的服务信息发起的;调用结果返回模块,用于向调用装置返回调用结果。
在一些实施例中,调用结果返回模块进一步用于根据调用请求中的参数和预设的返回报文模板,向调用装置返回调用结果,其中,返回报文模板包括参数与调用结果之间的对应关系。
在一些实施例中,调用结果返回模块进一步用于采用真实的服务提供者使用的返回报文格式向调用装置返回调用结果。
在一些实施例中,服务信息发送模块进一步用于向管理平台发送模拟对象的注册信息,其中,注册信息中包括模拟对象的服务信息。
在一些实施例中,服务信息发送模块进一步用于:实例化模拟对象,生成模拟对象的服务信息;根据预设的注册报文模板生成包括注册信息的注册报文,其中,注册报文模板与真实的服务提供者使用的注册报文具有相同的报文格式,注册信息包括模拟对象的服务信息;与管理平台建立连接;将生成的注册报文通过建立的连接发送给管理平台,以便模拟对象注册到管理平台。
在一些实施例中,模拟装置还包括:心跳发送模块,用于根据预设的心跳报文模板生成心跳报文,其中,心跳报文模板与真实的服务提供者使用的心跳报文具有相同的报文格式;向管理平台发送生成的心跳报文。
在一些实施例中,请求获取模块进一步用于获取调用装置关闭模拟对象功能的请求;模拟装置还包括:通知模块,用于通知管理平台模拟对象功能关闭,以便管理平台响应于调用装置的请求、将真实的服务提供者的服务信息发送给调用装置。
根据本发明实施例的第四个方面,提供一种管理平台,包括:信息接收模块,用于接收模拟装置发送的模拟对象的服务信息,其中,服务信息是响应于模拟装置获取调用装置发送的开启模拟对象功能的请求而发送的;信息发送模块,用于将服务信息与调用装置发送的消费信息进行匹配、并将服务信息发送给调用装置,以便调用装置根据消费信息和匹配的服务信息调用模拟对象。
在一些实施例中,信息接收模块进一步用于接收模拟装置发送的模拟对象的注册信息,其中,注册信息中包括模拟对象的服务信息。
在一些实施例中,信息接收模块进一步用于:与模拟装置建立连接;接收模拟装置发送的注册报文,其中,注册报文是模拟装置实例化模拟对象并生成模拟对象的服务信息后,根据预设的注册报文模板生成的,注册报文模板与真实的服务提供者使用的注册报文具有相同的报文格式,注册信息包括模拟对象的服务信息。
在一些实施例中,管理平台还包括:心跳接收模块,用于接收模拟装置发送的心跳报文,其中,心跳报文是模拟装置根据预设的心跳报文模板生成的,心跳报文模板与真实的服务提供者使用的心跳报文具有相同的报文格式。
在一些实施例中,管理平台还包括:通知接收模块,用于获取模拟装置发送的管理平台模拟对象功能关闭的通知,其中,通知是响应于模拟装置获取调用装置发送的关闭模拟对象功能的请求而发送的;信息发送模块进一步用于响应于调用装置的请求、将真实的服务提供者的服务信息发送给调用装置。
根据本发明实施例的第五个方面,提供一种远程调用系统,包括:前述任意一种模拟装置,和前述任意一种管理平台。
根据本发明一些实施例的第六个方面,提供一种模拟装置,包括:
存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行前述任意一种远程调用方法。
根据本发明一些实施例的第七个方面,提供一种管理平台,包括:
存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行前述任意一种远程调用方法。
根据本发明一些实施例的第八个方面,提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现前述任意一种远程调用方法。
根据本发明一些实施例的第九个方面,提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现前述任意一种远程调用方法。
上述发明中的一些实施例具有如下优点或有益效果:通过采用模拟装置主动获取调用装置的信息并发送给管理平台,使得调用装置在进行调用时直接从管理平台获取模拟对象的地址以进行调用,从而无需修改调用装置的配置文件,提高了调试效率和开发效率。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1A为根据本发明一些实施例的远程调用应用场景的示意图。
图1B为根据本发明一些实施例的远程调用方法的流程图。
图2为根据本发明一些实施例的模拟对象注册方法的流程图。
图3为根据本发明另一些实施例的远程调用方法的流程图。
图4为根据本发明又一些实施例的远程调用方法的流程图。
图5为根据本发明一些实施例的远程调用系统的结构图。
图6为根据本发明一些实施例的模拟装置的结构图。
图7为根据本发明一些实施例的管理平台的结构图。
图8为根据本发明一些实施例的设备的结构图。
图9为根据本发明另一些实施例的设备的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
图1A为根据本发明一些实施例的远程调用应用场景的示意图。如图1A所示,在实施例的应用场景中有如下设备:调用装置10,是服务调用方,例如可以为客户端设备;服务提供装置20,是真实的服务提供者设备,例如可以为服务器,在本发明的应用场景中,服务提供装置20没有完成全部的开发,因此无法满足调用装置10的全部调用需求;模拟装置30,具有提供Mock对象的功能,用于提供服务提供装置20未完成的服务,从而可以代替服务提供装置20协助完成调用装置10的调试和测试过程、而不影响调用装置10的正常工作流程;管理平台40,用于接收服务的调用方和提供方的信息并完成二者的匹配,以使得调用装置10能够获得服务提供方的地址来完成调用过程,当调用装置10所需的服务无法由服务提供装置20承担时,管理平台40向调用装置10提供模拟装置30的服务信息、以便调用装置10完成调用过程。
下面参考图1B描述本发明远程调用方法的实施例。
图1B为根据本发明一些实施例的远程调用方法的流程图。如图1B所示,该实施例的远程调用方法包括步骤S102~S110。
在步骤S102中,模拟装置获取调用装置发送的开启模拟对象功能的请求。
在步骤S104中,模拟装置将模拟对象的服务信息发送给管理平台。
在一些实施例中,模拟装置可以在生成模拟对象后向管理平台进行注册,并在注册信息中包括模拟对象的服务信息。
在步骤S106中,管理平台将服务信息与调用装置发送的消费信息进行匹配、并将服务信息发送给调用装置。
模拟对象的服务信息是调用装置在调用模拟对象时所需要的信息,例如,可以包括模拟对象的IP地址、端口号等地址信息、接口名称、方法名、方法的别名、配置信息等等。
消费信息例如可以为调用装置欲调用的方法的别名等信息。
调用装置在从管理平台处获取了模拟对象的服务信息后,可以对模拟对象发起调用。
在步骤S108中,调用装置根据消费信息和匹配的服务信息向模拟装置发起对模拟对象的调用。
在步骤S110中,模拟装置向调用装置返回调用结果。
模拟装置例如可以通过TCP(Transmission Control Protocol,传输控制协议)协议向调用装置返回调用结果。在一些实施例中,模拟装置可以采用真实的服务提供者使用的返回报文格式向调用装置返回调用结果。从而,模拟对象的报文格式与真实的报文格式能够保持一致,以使调用装置可以按照普通流程处理调用结果,无需进行额外改动。
调用装置进行调用的目的是为了使自身的业务流程能够完整地进行,因此模拟对象仅需要向调用装置返回调用结果即可,而并不需要模拟对象真正实现了业务逻辑。
通过上述实施例的方法,模拟装置可以主动获取调用装置的信息并发送给管理平台,使得调用装置在进行调用时直接从管理平台获取模拟对象的地址以进行调用,从而无需修改调用装置的配置文件,提高了调试效率和开发效率。
在一些实施例中,模拟装置可以向管理平台发送模拟对象的注册信息,注册信息中包括模拟对象的服务信息,以模拟真实的提供服务信息的流程。下面参考图2描述本发明模拟对象注册过程的实施例。
图2为根据本发明一些实施例的模拟对象注册方法的流程图。如图2所示,该实施例的模拟对象注册方法包括步骤S202~S214。
在步骤S202中,调用装置向模拟装置发送开启模拟对象功能的请求。
在步骤S204中,模拟装置实例化模拟对象,生成模拟对象的服务信息。
在步骤S206中,模拟装置根据预设的注册报文模板生成包括注册信息的注册报文,其中,注册报文模板与真实的服务提供者使用的注册报文具有相同的报文格式,注册信息包括模拟对象的服务信息。
在步骤S208中,模拟装置与管理平台建立连接。
在步骤S210中,模拟装置将生成的注册报文通过建立的连接发送给管理平台,以便模拟对象注册到管理平台。
从而,模拟装置可以模拟真实的服务提供方的注册过程,以使管理平台按照普通流程处理Mock对象、无需进行额外改动。
根据需要,该实施例的方法还可以包括步骤S212~S214。
在步骤S212中,模拟装置根据预设的心跳报文模板生成心跳报文,其中,心跳报文模板与真实的服务提供者使用的心跳报文具有相同的报文格式;
在步骤S214中,模拟装置向管理平台发送生成的心跳报文。
模拟装置例如可以通过在步骤S208中建立的连接发送心跳报文。
从而,模拟对象可以模仿真实的心跳连接过程与管理平台保持通信。
在一些实施例中,模拟装置还可以根据调用装置的调用请求中的不同参数返回定制化的结果。下面参考图3描述本发明远程调用方法的实施例。
图3为根据本发明另一些实施例的远程调用方法的流程图。如图3所示,该实施例的远程调用方法包括步骤S302~S314。
在步骤S302中,模拟装置获取调用装置发送的开启模拟对象功能的请求。
在步骤S304中,模拟装置将模拟对象的接口名、方法的别名、地址信息等服务信息发送给管理平台。
在步骤S306中,调用装置将消费服务列表发送给管理平台,消费服务列表中包括调用装置欲调用的方法的别名。
在步骤S308中,管理平台根据调用装置和模拟装置提供的方法的别名,确定调用装置欲调用的模拟对象对应的地址信息。
在步骤S310中,管理平台将调用装置欲调用的模拟对象的地址信息发送给调用装置。
在步骤S312中,调用装置根据获得的地址信息,发起针对相应的方法的别名的调用。
在步骤S314中,模拟装置根据调用请求中的参数和预设的返回报文模板,向调用装置返回调用结果,其中,模板包括参数与调用结果之间的对应关系。
模拟对象中并不包括真实的业务逻辑,但是其可以根据调用装置需要的结果进行定制返回。例如,当调用装置的调用请求中包括参数X时返回调用结果A,当调用请求中包括参数Y时返回调用结果B等等。
通过上述实施例的方法,模拟装置可以根据预设的需求,响应于调用装置传入的不同参数返回相应的调用结果,从而在真实的被调用服务未完成开发的情况下也能够使得服务调用方进行调试和测试,提高了开发效率。
在实际的开发过程中,某个方法或接口可能存在多种实现方式,即存在多个版本。为了进行区分,可以采用别名加以标识。例如,方法A有A1、A2、A3三种实现方式。在部分应用场景中,A1、A2、A3均未实现,此时可以直接使用模拟装置模拟方法A的全部实现方式A1、A2、A3的调用结果。
而在某些应用场景中,A1、A2已被实现,而A3却未完成开发。本发明的一些实施例能够针对这种情况提供解决方案,可以使调用装置根据需要调用真实的服务提供者提供的A1、A2、或者调用模拟装置提供的A3。下面参考图4描述本发明远程调用方法的实施例。
图4为根据本发明又一些实施例的远程调用方法的流程图。如图4所示,该实施例的远程调用方法包括步骤S402~S426。
在步骤S402中,调用装置向模拟装置发送开启模拟对象功能的请求。
在步骤S404中,调用装置将消费服务列表发送给管理平台。
在步骤S406中,模拟装置实例化Mock对象。
步骤S404和S406可以以任意顺序进行、或者可以同时进行。
在步骤S408中,模拟装置与管理平台建立TCP连接,并向管理平台发送Mock对象的注册信息,其中,注册信息中包括Mock对象的地址信息。
在步骤S410中,模拟装置通过HTTP(HyperText Transfer Protocol,超文本传输协议)连接通知管理平台模拟对象功能已开启。
根据需要,步骤S410也可以在步骤S404~S408之前执行。
在一些实施例中,模拟装置在收到模拟对象功能开启的通知后,可以通过模拟装置内部的寻址逻辑获取调用装置的地址信息,然后告知管理平台开启模拟对象功能的调用装置的地址,以使得管理平台知晓具体哪个调用装置需要调用模拟对象。
在步骤S412中,管理平台响应于获知管理平台模拟对象功能已开启,在将服务信息与调用装置发送的消费信息进行匹配后,仅将Mock对象的服务信息发送给调用装置、而不发送真实的服务提供者的地址信息。
在步骤S414中,调用装置根据获得的服务信息发起调用请求,以便调用模拟装置中的Mock对象。
在步骤S416中,模拟装置根据预设的Mock模板函数,根据调用请求中的参数进行正则匹配、获得调用结果。
在步骤S418中,模拟装置采用真实的服务提供者使用的返回报文格式向调用装置返回调用结果。
在步骤S420中,模拟装置获取调用装置关闭模拟对象功能的请求。
在步骤S422中,模拟装置通知管理平台模拟对象功能关闭。
在步骤S424中,管理平台将真实的服务提供者的服务信息发送给调用装置。
在步骤S426中,调用装置将Mock对象的服务信息进行替换为真实的服务提供者的服务信息,并对真实的服务提供者提供的服务对象发起调用。
通过上述实施例的方法,可以使得调用装置可以根据需要在模拟对象和真实的服务提供者提供的服务对象之间进行切换,提高了测试过程中的灵活性。
下面参考图5描述本发明远程调用系统的实施例。
图5为根据本发明一些实施例的远程调用系统的结构图。如图5所示,该实施例的远程调用系统50包括模拟装置510和管理平台520。
下面参考图6描述本发明模拟装置的实施例。
图6为根据本发明一些实施例的模拟装置的结构图。如图6所示,该实施例的模拟装置60包括:请求获取模块610,用于获取调用装置发送的开启模拟对象功能的请求;服务信息发送模块620,用于将模拟对象的服务信息发送给管理平台,以便管理平台将服务信息与调用装置发送的消费信息进行匹配、并将服务信息发送给调用装置;调用接收模块630,用于接受调用装置对模拟对象的调用,其中,调用是根据消费信息和匹配的服务信息发起的;调用结果返回模块640,用于向调用装置返回调用结果。
在一些实施例中,调用结果返回模块640可以进一步用于根据调用请求中的参数和预设的返回报文模板,向调用装置返回调用结果,其中,返回报文模板包括参数与调用结果之间的对应关系。
在一些实施例中,调用结果返回模块640可以进一步用于采用真实的服务提供者使用的返回报文格式向调用装置返回调用结果。
在一些实施例中,服务信息发送模块620可以进一步用于向管理平台发送模拟对象的注册信息,其中,注册信息中包括模拟对象的服务信息。
在一些实施例中,服务信息发送模块620可以进一步用于:实例化模拟对象,生成模拟对象的服务信息;根据预设的注册报文模板生成包括注册信息的注册报文,其中,注册报文模板与真实的服务提供者使用的注册报文具有相同的报文格式,注册信息包括模拟对象的服务信息;与管理平台建立连接;将生成的注册报文通过建立的连接发送给管理平台,以便模拟对象注册到管理平台。
在一些实施例中,模拟装置60还可以包括:心跳发送模块650,用于根据预设的心跳报文模板生成心跳报文,其中,心跳报文模板与真实的服务提供者使用的心跳报文具有相同的报文格式;向管理平台发送生成的心跳报文。
在一些实施例中,请求获取模块610可以进一步用于获取调用装置关闭模拟对象功能的请求;模拟装置60还可以包括:通知模块660,用于通知管理平台模拟对象功能关闭,以便管理平台响应于调用装置的请求、将真实的服务提供者的服务信息发送给调用装置。
下面参考图7描述本发明管理平台的实施例。
图7为根据本发明一些实施例的管理平台的结构图。如图7所示,该实施例的管理平台70包括:信息接收模块710,用于接收模拟装置发送的模拟对象的服务信息,其中,服务信息是响应于模拟装置获取调用装置发送的开启模拟对象功能的请求而发送的;信息发送模块720,用于将服务信息与调用装置发送的消费信息进行匹配、并将服务信息发送给调用装置,以便调用装置根据消费信息和匹配的服务信息调用模拟对象。
在一些实施例中,信息接收模块710可以进一步用于接收模拟装置发送的模拟对象的注册信息,其中,注册信息中包括模拟对象的服务信息。
在一些实施例中,信息接收模块710可以进一步用于:与模拟装置建立连接;接收模拟装置发送的注册报文,其中,注册报文是模拟装置实例化模拟对象并生成模拟对象的服务信息后,根据预设的注册报文模板生成的,注册报文模板与真实的服务提供者使用的注册报文具有相同的报文格式,注册信息包括模拟对象的服务信息。
在一些实施例中,管理平台70还可以包括:心跳接收模块730,用于接收模拟装置发送的心跳报文,其中,心跳报文是模拟装置根据预设的心跳报文模板生成的,心跳报文模板与真实的服务提供者使用的心跳报文具有相同的报文格式。
在一些实施例中,管理平台70还可以包括:通知接收模块740,用于获取模拟装置发送的管理平台模拟对象功能关闭的通知,其中,通知是响应于模拟装置获取调用装置发送的关闭模拟对象功能的请求而发送的;信息发送模块720可以进一步用于响应于调用装置的请求、将真实的服务提供者的服务信息发送给调用装置。
图8为根据本发明一些实施例中设备的结构图,该设备可以是模拟装置或者管理平台。如图8所示,该实施例的设备800包括:存储器810以及耦接至该存储器810的处理器820,处理器820被配置为基于存储在存储器810中的指令,执行前述任意一个实施例中的远程调用方法。
其中,存储器810例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(Boot Loader)以及其他程序等。
图9为根据本发明另一些实施例中设备的结构图,该设备可以是模拟装置或者管理平台。如图9所示,该实施例的设备900包括:存储器910以及处理器920,还可以包括输入输出接口930、网络接口940、存储接口950等。这些接口930,940,950以及存储器910和处理器920之间例如可以通过总线960连接。其中,输入输出接口930为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口940为各种联网设备提供连接接口。存储接口950为SD卡、U盘等外置存储设备提供连接接口。
本发明的实施例还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现前述任意一种远程调用方法。
本领域内的技术人员应当明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解为可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (29)

1.一种远程调用方法,包括:
模拟装置获取调用装置发送的开启模拟对象功能的请求;
模拟装置将模拟对象的服务信息发送给管理平台,以便所述管理平台将所述服务信息与调用装置发送的消费信息进行匹配、并将所述服务信息发送给所述调用装置;
模拟装置接受所述调用装置对所述模拟对象的调用,其中,所述调用是根据消费信息和匹配的服务信息发起的;
模拟装置向调用装置返回调用结果。
2.根据权利要求1所述的远程调用方法,其中,模拟装置根据所述调用请求中的参数和预设的返回报文模板,向所述调用装置返回调用结果,其中,所述返回报文模板包括参数与调用结果之间的对应关系。
3.根据权利要求1或2所述的远程调用方法,其中,模拟装置采用真实的服务提供者使用的返回报文格式向调用装置返回调用结果。
4.根据权利要求1所述的远程调用方法,其中,
模拟装置向管理平台发送模拟对象的注册信息,其中,所述注册信息中包括所述模拟对象的服务信息。
5.根据权利要求4所述的远程调用方法,其中,所述模拟装置将模拟对象的服务信息发送给管理平台包括:
模拟装置实例化模拟对象,生成模拟对象的服务信息;
模拟装置根据预设的注册报文模板生成包括注册信息的注册报文,其中,所述注册报文模板与真实的服务提供者使用的注册报文具有相同的报文格式,所述注册信息包括所述模拟对象的服务信息;
模拟装置与管理平台建立连接;
模拟装置将生成的注册报文通过建立的连接发送给管理平台,以便所述模拟对象注册到管理平台。
6.根据权利要求4所述的远程调用方法,还包括:
模拟装置根据预设的心跳报文模板生成心跳报文,其中,所述心跳报文模板与真实的服务提供者使用的心跳报文具有相同的报文格式;
模拟装置向管理平台发送生成的心跳报文。
7.根据权利要求1所述的远程调用方法,还包括:
模拟装置获取调用装置关闭模拟对象功能的请求;
模拟装置通知管理平台模拟对象功能关闭,以便所述管理平台响应于调用装置的请求、将真实的服务提供者的服务信息发送给所述调用装置。
8.一种远程调用方法,包括:
管理平台接收模拟装置发送的模拟对象的服务信息,其中,所述服务信息是响应于模拟装置获取调用装置发送的开启模拟对象功能的请求而发送的;
管理平台将所述服务信息与调用装置发送的消费信息进行匹配、并将所述服务信息发送给所述调用装置,以便调用装置根据消费信息和匹配的服务信息调用所述模拟对象。
9.根据权利要求8所述的远程调用方法,其中,管理平台接收模拟装置发送的模拟对象的注册信息,其中,所述注册信息中包括所述模拟对象的服务信息。
10.根据权利要求9所述的远程调用方法,其中,
管理平台与模拟装置建立连接;
管理平台接收模拟装置发送的注册报文,其中,所述注册报文是模拟装置实例化模拟对象并生成模拟对象的服务信息后,根据预设的注册报文模板生成的,所述注册报文模板与真实的服务提供者使用的注册报文具有相同的报文格式,所述注册信息包括所述模拟对象的服务信息。
11.根据权利要求9所述的远程调用方法,还包括:
管理平台接收模拟装置发送的心跳报文,其中,所述心跳报文是模拟装置根据预设的心跳报文模板生成的,所述心跳报文模板与真实的服务提供者使用的心跳报文具有相同的报文格式。
12.根据权利要求8所述的远程调用方法,还包括:
管理平台获取模拟装置发送的管理平台模拟对象功能关闭的通知,其中,所述通知是响应于模拟装置获取调用装置发送的关闭模拟对象功能的请求而发送的;
管理平台响应于调用装置的请求、将真实的服务提供者的服务信息发送给所述调用装置。
13.一种模拟装置,包括:
请求获取模块,用于获取调用装置发送的开启模拟对象功能的请求;
服务信息发送模块,用于将模拟对象的服务信息发送给管理平台,以便所述管理平台将所述服务信息与调用装置发送的消费信息进行匹配、并将所述服务信息发送给调用装置;
调用接收模块,用于接受所述调用装置对所述模拟对象的调用,其中,所述调用是根据消费信息和匹配的服务信息发起的;
调用结果返回模块,用于向调用装置返回调用结果。
14.根据权利要求13所述的模拟装置,其中,所述调用结果返回模块进一步用于根据所述调用请求中的参数和预设的返回报文模板,向所述调用装置返回调用结果,其中,所述返回报文模板包括参数与调用结果之间的对应关系。
15.根据权利要求13或14所述的模拟装置,其中,所述调用结果返回模块进一步用于采用真实的服务提供者使用的返回报文格式向调用装置返回调用结果。
16.根据权利要求13所述的模拟装置,其中,所述服务信息发送模块进一步用于向管理平台发送模拟对象的注册信息,其中,所述注册信息中包括所述模拟对象的服务信息。
17.根据权利要求16所述的模拟装置,其中,所述服务信息发送模块进一步用于:实例化模拟对象,生成模拟对象的服务信息;根据预设的注册报文模板生成包括注册信息的注册报文,其中,所述注册报文模板与真实的服务提供者使用的注册报文具有相同的报文格式,所述注册信息包括所述模拟对象的服务信息;与管理平台建立连接;将生成的注册报文通过建立的连接发送给管理平台,以便所述模拟对象注册到管理平台。
18.根据权利要求16所述的模拟装置,还包括:
心跳发送模块,用于根据预设的心跳报文模板生成心跳报文,其中,所述心跳报文模板与真实的服务提供者使用的心跳报文具有相同的报文格式;向管理平台发送生成的心跳报文。
19.根据权利要求13所述的模拟装置,其中,
所述请求获取模块进一步用于获取调用装置关闭模拟对象功能的请求;
所述模拟装置还包括:通知模块,用于通知管理平台模拟对象功能关闭,以便所述管理平台响应于调用装置的请求、将真实的服务提供者的服务信息发送给所述调用装置。
20.一种管理平台,包括:
信息接收模块,用于接收模拟装置发送的模拟对象的服务信息,其中,所述服务信息是响应于模拟装置获取调用装置发送的开启模拟对象功能的请求而发送的;
信息发送模块,用于将所述服务信息与调用装置发送的消费信息进行匹配、并将所述服务信息发送给调用装置,以便调用装置根据消费信息和匹配的服务信息调用所述模拟对象。
21.根据权利要求20所述的管理平台,其中,所述信息接收模块进一步用于接收模拟装置发送的模拟对象的注册信息,其中,所述注册信息中包括所述模拟对象的服务信息。
22.根据权利要求21所述的管理平台,其中,所述信息接收模块进一步用于:与模拟装置建立连接;接收模拟装置发送的注册报文,其中,所述注册报文是模拟装置实例化模拟对象并生成模拟对象的服务信息后,根据预设的注册报文模板生成的,所述注册报文模板与真实的服务提供者使用的注册报文具有相同的报文格式,所述注册信息包括所述模拟对象的服务信息。
23.根据权利要求21所述的管理平台,还包括:
心跳接收模块,用于接收模拟装置发送的心跳报文,其中,所述心跳报文是模拟装置根据预设的心跳报文模板生成的,所述心跳报文模板与真实的服务提供者使用的心跳报文具有相同的报文格式。
24.根据权利要求20所述的管理平台,还包括:通知接收模块,用于获取模拟装置发送的管理平台模拟对象功能关闭的通知,其中,所述通知是响应于模拟装置获取调用装置发送的关闭模拟对象功能的请求而发送的;
所述信息发送模块进一步用于响应于调用装置的请求、将真实的服务提供者的服务信息发送给所述调用装置。
25.一种远程调用系统,包括:
权利要求13~19中任一项所述的模拟装置,和
权利要求20~24中任一项所述的管理平台。
26.一种模拟装置,其中:
存储器;以及
耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如权利要求1~7中任一项所述的远程调用方法。
27.一种管理平台,其中:
存储器;以及
耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如权利要求8~12中任一项所述的远程调用方法。
28.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1~7中任一项所述的远程调用方法。
29.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求8~12中任一项所述的远程调用方法。
CN201810029472.8A 2018-01-12 2018-01-12 远程调用方法、系统和相关设备及计算机可读存储介质 Pending CN110032454A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810029472.8A CN110032454A (zh) 2018-01-12 2018-01-12 远程调用方法、系统和相关设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810029472.8A CN110032454A (zh) 2018-01-12 2018-01-12 远程调用方法、系统和相关设备及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN110032454A true CN110032454A (zh) 2019-07-19

Family

ID=67234437

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810029472.8A Pending CN110032454A (zh) 2018-01-12 2018-01-12 远程调用方法、系统和相关设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN110032454A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110765024A (zh) * 2019-10-29 2020-02-07 百度在线网络技术(北京)有限公司 模拟测试方法、装置、电子设备和计算机可读存储介质
CN111274150A (zh) * 2020-02-07 2020-06-12 北京字节跳动网络技术有限公司 服务实例访问方法、装置和电子设备
CN111695328A (zh) * 2020-06-16 2020-09-22 深圳前海微众银行股份有限公司 模拟测试报文生成方法、装置、设备及存储介质
CN112100079A (zh) * 2020-11-02 2020-12-18 北京淇瑀信息科技有限公司 基于模拟数据调用的测试方法、系统和电子设备
CN112988273A (zh) * 2021-03-24 2021-06-18 北京沃东天骏信息技术有限公司 异构系统的调用方法和接口管理平台
CN112988322A (zh) * 2019-12-17 2021-06-18 菜鸟智能物流控股有限公司 一种模拟硬件驱动方法及装置
CN113760707A (zh) * 2020-09-23 2021-12-07 北京沃东天骏信息技术有限公司 接口测试方法、装置、设备及计算机可读存储介质
CN114281673A (zh) * 2021-11-23 2022-04-05 中国联合网络通信集团有限公司 基于虚拟化服务的测试方法、设备以及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090088112A (ko) * 2008-02-14 2009-08-19 삼성전자주식회사 로봇 통신 미들웨어 플랫폼 및 그 통신 방법
CN102955714A (zh) * 2011-08-17 2013-03-06 阿里巴巴集团控股有限公司 实现动态模拟远程接口的装置及方法
CN105814539A (zh) * 2013-06-18 2016-07-27 西安姆贝拉有限公司 用于代码虚拟化和远程进程调用生成的方法和装置
CN106603283A (zh) * 2016-12-13 2017-04-26 广州唯品会信息科技有限公司 一种模拟服务的方法、装置及集中管理平台
CN106776313A (zh) * 2016-12-13 2017-05-31 广州唯品会信息科技有限公司 一种模拟服务的方法、装置及集中管理平台
CN106970873A (zh) * 2017-01-10 2017-07-21 阿里巴巴集团控股有限公司 线上mock测试方法、装置及系统
CN106980545A (zh) * 2016-01-15 2017-07-25 阿里巴巴集团控股有限公司 远程调用方法及装置
CN107179984A (zh) * 2016-03-10 2017-09-19 北京京东尚科信息技术有限公司 一种接口mock方法及接口测试方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090088112A (ko) * 2008-02-14 2009-08-19 삼성전자주식회사 로봇 통신 미들웨어 플랫폼 및 그 통신 방법
CN102955714A (zh) * 2011-08-17 2013-03-06 阿里巴巴集团控股有限公司 实现动态模拟远程接口的装置及方法
CN105814539A (zh) * 2013-06-18 2016-07-27 西安姆贝拉有限公司 用于代码虚拟化和远程进程调用生成的方法和装置
CN106980545A (zh) * 2016-01-15 2017-07-25 阿里巴巴集团控股有限公司 远程调用方法及装置
CN107179984A (zh) * 2016-03-10 2017-09-19 北京京东尚科信息技术有限公司 一种接口mock方法及接口测试方法
CN106603283A (zh) * 2016-12-13 2017-04-26 广州唯品会信息科技有限公司 一种模拟服务的方法、装置及集中管理平台
CN106776313A (zh) * 2016-12-13 2017-05-31 广州唯品会信息科技有限公司 一种模拟服务的方法、装置及集中管理平台
CN106970873A (zh) * 2017-01-10 2017-07-21 阿里巴巴集团控股有限公司 线上mock测试方法、装置及系统

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110765024A (zh) * 2019-10-29 2020-02-07 百度在线网络技术(北京)有限公司 模拟测试方法、装置、电子设备和计算机可读存储介质
CN110765024B (zh) * 2019-10-29 2023-08-29 百度在线网络技术(北京)有限公司 模拟测试方法、装置、电子设备和计算机可读存储介质
CN112988322A (zh) * 2019-12-17 2021-06-18 菜鸟智能物流控股有限公司 一种模拟硬件驱动方法及装置
CN111274150A (zh) * 2020-02-07 2020-06-12 北京字节跳动网络技术有限公司 服务实例访问方法、装置和电子设备
CN111274150B (zh) * 2020-02-07 2023-08-22 北京字节跳动网络技术有限公司 服务实例访问方法、装置和电子设备
CN111695328A (zh) * 2020-06-16 2020-09-22 深圳前海微众银行股份有限公司 模拟测试报文生成方法、装置、设备及存储介质
CN113760707A (zh) * 2020-09-23 2021-12-07 北京沃东天骏信息技术有限公司 接口测试方法、装置、设备及计算机可读存储介质
CN112100079A (zh) * 2020-11-02 2020-12-18 北京淇瑀信息科技有限公司 基于模拟数据调用的测试方法、系统和电子设备
CN112988273A (zh) * 2021-03-24 2021-06-18 北京沃东天骏信息技术有限公司 异构系统的调用方法和接口管理平台
CN114281673A (zh) * 2021-11-23 2022-04-05 中国联合网络通信集团有限公司 基于虚拟化服务的测试方法、设备以及存储介质

Similar Documents

Publication Publication Date Title
CN110032454A (zh) 远程调用方法、系统和相关设备及计算机可读存储介质
CN109656538A (zh) 应用程序的生成方法、装置、系统、设备和介质
CN105100127B (zh) 用于验证在云计算环境中的应用部署拓扑的设备和方法
KR101548160B1 (ko) 워게임 모델의 연동 시스템 및 방법
Quinton et al. SALOON: a platform for selecting and configuring cloud environments
CN105577463B (zh) 一种基于通信协议的测试方法及其装置
Asensio et al. Emulating home automation installations through component-based web technology
Lee et al. Harmonizing IEC 61850 and CIM for connectivity of substation automation
CN110535679A (zh) 切片的管理方法、架构、网络切片销售平台和管理系统
Neema et al. Simulation integration platforms for cyber-physical systems
CN108965375A (zh) 服务调用代理控制系统、方法、服务器及可读存储介质
CN109471693A (zh) 将专有组件映射到跨平台开发系统的方法、介质及设备
CN112465448A (zh) 基于区块链的跨组织工作流运行方法及系统
CN110083342A (zh) 一种程序生成方法、装置以及计算机可读存储介质
Thangarajah et al. Scenarios for system requirements traceability and testing
CN106484452A (zh) 一种软件平台的统一配置管理方法和装置
CN110209587A (zh) 安全芯片业务流程的测试方法及装置
Mittal et al. Implementation of formal standard for interoperability in M&S/systems of systems integration with DEVS/SOA
Dragoicea et al. Integrating HLA and service-oriented architecture in a simulation framework
Gonidis et al. Leveraging platform basic services in cloud application platforms for the development of cloud applications
CN103023740B (zh) 一种信息交互总线系统及电力数据传输方法
Cho et al. Design considerations for distributed real-time DEVS
Resch et al. Engineering and validation support framework for power system automation and control applications
CN106330556A (zh) 一种用于生成服务模块调用关联信息的方法与装置
Derr Ns-3 web-based user interface: Power grid communications planning and modeling tool

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