[发明专利]应用程序的跨语言调用方法、装置、电子设备及存储介质在审
申请号: | 202011192462.X | 申请日: | 2020-10-30 |
公开(公告)号: | CN112346732A | 公开(公告)日: | 2021-02-09 |
发明(设计)人: | 洪涛龙;熊友军 | 申请(专利权)人: | 深圳市优必选科技股份有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/71;G06F9/455 |
代理公司: | 深圳中一联合知识产权代理有限公司 44414 | 代理人: | 张瑞志 |
地址: | 518000 广东省深圳市南山区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 应用程序 语言 调用 方法 装置 电子设备 存储 介质 | ||
本申请适用于计算机技术领域,提供了应用程序的跨语言调用方法、装置、电子设备及存储介质,应用程序的跨语言调用方法包括:从Docker镜像仓库拉取第一Docker镜像,第一Docker镜像包括第一运行环境以及第二运行环境,在第一运行环境下生成待调用的应用程序,在第二运行环境下调用待调用的应用程序,得到目标应用程序,根据目标应用程序生成目标Docker镜像,将目标Docker镜像推送至Docker镜像仓库,其他服务器从Docker镜像仓库拉取目标Docker镜像后,不用安装运行环境,即可直接运行目标应用程序。而且在拉取第一Docker镜像后,即可在本地实现跨语言的调用,从而避免了远程调用。
技术领域
本申请属于计算机技术领域,尤其涉及应用程序的跨语言调用方法、装置、电子设备及存储介质。
背景技术
在应用程序的编译过程中,经常会用到跨语言调用的情形,例如,java调用c++/c代码,java调用python的代码,甚至java同时调用python和c++等。
为了实现跨语言调用,一种方法是直接在服务器中搭建各种语言依赖的环境,比如,c/c++依赖的环境是gcc++,若需要使用c/c++语言,则需要安装gcc++;比如,java依赖的环境是jdk环境,若需要使用java语言,则需要安装jdk环境。但是,当一台服务器上部署了多个应用程序,并且他们依赖的环境版本不同时,会带来一定的问题。比如一个java应用程序需要jdk11版本,而另外一个需要jdk8的版本,就会存在环境干扰,此时,需要手动调整代码进行适配。
为了解决环境干扰的问题,另外一种方法是使用Docker来单独部署各个运行环境,其中,Docker是一个开源的应用容器引擎,开发者可以打包应用以及依赖包到一个可移植的镜像中,然后发布到任何服务器上,而Docker能够虚拟出多个Docker容器,各Docker容器相互之间没有有任何接口,因此,互相之间不会产生环境干扰。比如java调用python的例子中,可以将python逻辑封装成微服务作为服务提供方,将java应用也做成微服务作为服务调用方,此时我们可以将服务调用方和服务提供方各自依赖的环境单独装在对应的Docker容器中。完成部署后,使用跨语言的远程过程调用(Remote Procedure Call,RPC)框架。但是远程调用对网络的要求较高,而且远程调用会存在一定的延时,影响应用程序的编译效率。
发明内容
有鉴于此,本申请实施例提供了应用程序的跨语言调用方法、装置、电子设备及存储介质,可以在本地实现跨语言的调用,提高应用程序的编译效率。
本申请实施例的第一方面提供了一种应用程序的跨语言调用方法,包括:
从Docker镜像仓库拉取第一Docker镜像,所述第一Docker镜像包括编译待调用的应用程序的第一编程语言所需的第一运行环境,以及调用所述待调用的应用程序的第二编程语言所需的第二运行环境,所述第一编程语言与所述第二编程语言不同;
在所述第一运行环境下生成所述待调用的应用程序;
在所述第二运行环境下调用所述待调用的应用程序,得到目标应用程序;
根据所述目标应用程序生成目标Docker镜像,将所述目标Docker镜像推送至所述Docker镜像仓库。
在第一方面的一种可能的实现方式中,所述应用程序的跨语言调用方法还包括:
根据所述待调用的应用程序生成第二Docker镜像,将所述第二Docker镜像推送至所述Docker镜像仓库。
在第一方面的一种可能的实现方式中,所述应用程序的跨语言调用方法还包括:
若接收到所述待调用的应用程序的更新指令,更新所述待调用的应用程序;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市优必选科技股份有限公司,未经深圳市优必选科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011192462.X/2.html,转载请声明来源钻瓜专利网。