传统应用的多租户部署方法、装置、设备及存储介质制造方法及图纸

技术编号:34140355 阅读:7 留言:0更新日期:2022-07-14 17:39
本发明专利技术涉及数据处理技术,揭露一种传统应用的多租户部署方法,包括:将应用的相关信息注册至预设微服务部署包模板,得到应用微服务部署包模板;将租户唯一标识加载至应用微服务部署包模板,生成租户部署包以及与对象信息表,并将租户部署包储存至预设部署包管理仓库,将对象信息表存储至预设对象存储库;根据租户部署包中租户唯一标识,获取与租户唯一标识对应的用户部署空间作为待部署空间;通过租户部署包将镜像部署参数部署至所述待部署空间。本发明专利技术还涉及区块链技术,预设微服务部署包模板存储于区块链中。本发明专利技术能够解决现有技术中,运维成本高、各租户的数据不互通,运营统计需要汇聚各系统的数据,额外开发工作量大等问题。问题。问题。

Multi tenant deployment methods, devices, devices and storage media for traditional applications

【技术实现步骤摘要】
传统应用的多租户部署方法、装置、设备及存储介质


[0001]本专利技术涉及数据处理领域,尤其涉及一种传统应用的多租户部署方法、装置、设备及存储介质。

技术介绍

[0002]在应用上云SAAS化的大趋势下,传统应用系统如何低成本、高效的转变为多租户应用,实现资源隔离、数据隔离,是传统应用改造面临主要问题。对于传统应用的多租户部署,目前主流的解决方案有两种:
[0003]第一种是逻辑上实现的多租户。主要是通过在应用数据库的所有表上增加租户ID字段,在增删改查业务中,通过增加租户ID字段过滤,实现不同租户的数据隔离;通过将有状态应用改造成无状态应用,使应用具备分布式横向扩展能力,实现一定程度上的资源隔离。该逻辑上实现的多租户的解决方案的优点是改造后的系统部署架构简单,基本和改造前一样,数据存储在相同的数据库表中,方便运营统计;缺点是系统改造工作量较大,涉及到系统所有功能,在租户越来越多的情况下单个数据库会存在性能瓶颈,只能通过分表分库的方式优化,系统复杂度上升。
[0004]第二种是利用容器技术实现完全物理隔离。通过将应用改造成docker镜像,然后在kubernetes集群上,通过kubernetes脚本完成部署。该利用容器技术实现完全物理隔离的解决方案的优点是只需要改造部署架构,无需修改应用功能,开发成本低;缺点是在租户越来越多的情况下,需要运维的系统越来越多,运维成本会变高,而且由于完全物理隔离,各租户的数据不互通,运营统计需要汇聚各系统的数据,有额外开发工作量。

技术实现思路

[0005]本专利技术提供一种传统应用的多租户部署方法、装置、设备及存储介质,其主要目的在于能够解决现有技术中,利用容器技术实现完全物理隔离,在租户越来越多的情况下,需要运维的系统越来越多,运维成本高,而且由于完全物理隔离,各租户的数据不互通,运营统计需要汇聚各系统的数据,额外开发工作量大等问题。
[0006]第一方面,为实现上述目的,本专利技术提供的一种传统应用的多租户部署方法,所述方法包括:
[0007]根据获取的租户部署指令,将应用的相关信息注册至对应的预设微服务部署包模板,建立所述应用与微服务之间的对应关系,得到应用微服务部署包模板;
[0008]将获取的租户微服务请求信息中的租户唯一标识对应加载至所述应用微服务部署包模板,生成租户部署包以及与所述租户部署包对应的对象信息表,并将所述租户部署包储存至预设部署包管理仓库以及将所述对象信息表存储至预设对象存储库;其中,所述对象信息表包括租户唯一标识和与所述租户唯一标识对应的租户部署包的相关信息;所述租户部署包包括租户唯一标识、应用名称字段和微服务名称字段;
[0009]根据所述租户部署包中的租户唯一标识,从预设部署容器集群中获取与所述租户
唯一标识对应的用户部署空间作为待部署空间;
[0010]从预设程序数据镜像仓库中获取与所述租户部署包预先匹配的镜像部署参数,并通过所述租户部署包将所述镜像部署参数部署至所述待部署空间。
[0011]第二方面,为了解决上述问题,本专利技术还提供一种传统应用的多租户部署装置,所述装置包括:
[0012]注册模块,用于根据获取的租户部署指令,将应用的相关信息注册至对应的预设微服务部署包模板,建立所述应用与微服务之间的对应关系,得到应用微服务部署包模板;
[0013]加载模块,用于将获取的租户微服务请求信息中的租户唯一标识对应加载至所述应用微服务部署包模板,生成租户部署包以及与所述租户部署包对应的对象信息表,并将所述租户部署包储存至预设部署包管理仓库以及将所述对象信息表存储至预设对象存储库;其中,所述对象信息表包括租户唯一标识和与所述租户唯一标识对应的租户部署包的相关信息;所述租户部署包包括租户唯一标识、应用名称字段和微服务名称字段;
[0014]获取模块,用于根据所述租户部署包中的租户唯一标识,从预设部署容器集群中获取与所述租户唯一标识对应的用户部署空间作为待部署空间;
[0015]部署模块,用于从预设程序数据镜像仓库中获取与所述租户部署包预先匹配的镜像部署参数,并通过所述租户部署包将所述镜像部署参数部署至所述待部署空间。
[0016]第三方面,为了解决上述问题,本专利技术还提供一种电子设备,所述电子设备包括:
[0017]至少一个处理器;以及,
[0018]与所述至少一个处理器通信连接的存储器;其中,
[0019]所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的传统应用的多租户部署方法的步骤。
[0020]第四方面,为了解决上述问题,本专利技术还提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的传统应用的多租户部署方法。
[0021]本专利技术提出的传统应用的多租户部署方法、装置、设备及存储介质,通过预设微服务部署包模板、建立应用与微服务之间的对应关系得到应用微服务部署包模板、将租户微服务请求信息中的租户唯一标识对应加载至应用微服务部署包模板,从而自动生成租户部署包;后续对租户部署包的运维无需人工维护,适用于多租户场景;通过将根据租户部署包生成的对象信息表储存至预设对象存储库中,使租户与应用、微服务的关联关系得以保存,方便查找和后续维护;租户部署包变更仅需要更新一次部署包模板,无需每个租户的部署包都更新一次,由系统自动更新,降低人工成本。
附图说明
[0022]图1为本专利技术一实施例提供的传统应用的多租户部署方法的流程示意图;
[0023]图2为本专利技术一实施例提供的传统应用的多租户部署装置的模块示意图;
[0024]图3为本专利技术一实施例提供的实现传统应用的多租户部署方法的电子设备的内部结构示意图;
[0025]本专利技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
[0026]应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。
[0027]本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
[0028]人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
[0029]本专利技术提供一种传统应用的多租户部署方法。参照图1所示,为本专利技术一实施例提供的传统应用的多租户部署方法的流程示意图。该方法可以由一个装置执行,该装置可以由软件和/或硬件实现。
[0030]在本实施例中,传统应用的多租户部署方法包括:...

【技术保护点】

【技术特征摘要】
1.一种传统应用的多租户部署方法,应用于电子装置,其特征在于,所述方法包括:根据获取的租户部署指令,将应用的相关信息注册至对应的预设微服务部署包模板,建立所述应用与微服务之间的对应关系,得到应用微服务部署包模板;将获取的租户微服务请求信息中的租户唯一标识对应加载至所述应用微服务部署包模板,生成租户部署包以及与所述租户部署包对应的对象信息表,并将所述租户部署包储存至预设部署包管理仓库以及将所述对象信息表存储至预设对象存储库;其中,所述对象信息表包括租户唯一标识和与所述租户唯一标识对应的租户部署包的相关信息;所述租户部署包包括租户唯一标识、应用名称字段和微服务名称字段;根据所述租户部署包中的租户唯一标识,从预设部署容器集群中获取与所述租户唯一标识对应的用户部署空间作为待部署空间;从预设程序数据镜像仓库中获取与所述租户部署包预先匹配的镜像部署参数,并通过所述租户部署包将所述镜像部署参数部署至所述待部署空间。2.根据权利要求1所述的传统应用的多租户部署方法,其特征在于,所述预设微服务部署包模板存储于区块链中,在所述根据获取的租户部署指令,将应用的相关信息注册至对应的预设微服务部署包模板,建立所述应用与微服务之间的对应关系,得到应用微服务部署包模板之前,还包括:根据预设目录规则,创建初始定义表目录;基于微服务的变量,对所述始定义表目录进行格式变量替换处理,得到预设微服务部署包模板。3.根据权利要求1所述的传统应用的多租户部署方法,其特征在于,所述根据获取的租户部署指令,将应用的相关信息注册至对应的预设微服务部署包模板,建立所述应用与微服务之间的对应关系,得到应用微服务部署包模板包括:根据每个应用所提供的微服务的名称,获取与所述应用对应的预设微服务部署包模板作为目标微服务部署包模板;将所述应用的相关信息加载至所述目标微服务部署包模板,使所述应用与该所述应用所提供的微服务之间建立对应关系,得到应用微服务部署包模板。4.根据权利要求1所述的传统应用的多租户部署方法,其特征在于,所述将获取的租户微服务请求信息中的租户唯一标识对应加载至所述应用微服务部署包模板,生成租户部署包以及与所述租户部署包对应的对象信息表,并将所述租户部署包储存至预设部署包管理仓库以及将所述对象信息表存储至预设对象存储库包括:获取所述租户微服务请求信息中指定的应用名称字段和微服务名称字段;其中,所述租户微服务请求信息包括:租户唯一标识、应用名称字段和微服务名称字段;根据所述应用名称字段和所述微服务名称字段,获取与所述租户微服务请求信息所对应的应用微服务部署包模板,作为选定部署包模板;其中,所述应用微服务部署包模板包括应用名称字段和微服务名称字段;将所述租户唯一标识加载至所述选定部署包模板,生成租户部署包,并将所述租户唯一标识以及所述租户部署包的相关信息加载至预设信息表中,生成对象信息表;将所述租户部署包储存至预设部署包管理仓库以及将所述对象信息表存储至预设对象存储库。
5.根据权利要求1所述的传统应用的多租户部署方法,其特征在于,在所述根据所述租户部署包中的租户唯一标识,从预设部署容器集群中获取与所述租户唯一标识对应的用户部署空间作为待部署空间...

【专利技术属性】
技术研发人员:李斌
申请(专利权)人:平安国际智慧城市科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1