CN116909684A - 低代码应用的部署方法、装置、计算机设备和存储介质 - Google Patents
低代码应用的部署方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN116909684A CN116909684A CN202310869504.6A CN202310869504A CN116909684A CN 116909684 A CN116909684 A CN 116909684A CN 202310869504 A CN202310869504 A CN 202310869504A CN 116909684 A CN116909684 A CN 116909684A
- Authority
- CN
- China
- Prior art keywords
- low
- code application
- container
- resource
- configuration information
- 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
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000013468 resource allocation Methods 0.000 claims abstract description 25
- 238000004590 computer program Methods 0.000 claims description 17
- 238000009877 rendering Methods 0.000 claims description 13
- 238000012795 verification Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 239000000523 sample Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及低代码应用的部署方法、装置、计算机设备和存储介质。所述方法包括:获取低代码应用的资源配置需求,所述资源配置需求包括所述低代码应用的资源共享类型以及容器资源的需求额度;根据所述资源配置需求、历史低代码应用的容器资源的配置信息,确定所述低代码应用的容器资源的配置信息;响应于启动部署的触发操作,根据所述低代码应用的容器资源的配置信息,以及容器池中容器资源的剩余额度,对所述低代码应用进行部署。有利于提高低代码应用的部署效率。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种低代码应用的部署方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
随着计算机技术的发展,出现了容器技术。一个容器镜像是一个可运行的软件包,其中包含了一个完整的可执行程序,包括代码和运行时需要应用、系统库和全部重要设置的默认值。应用程序通过使用容器与底层的宿主机架构解耦。容器的生命周期管理可以通过各种容器编排器解决方案实现,常见的容器编排器包括Kubernetes、Docker Swarm和Apache Mesos。其中,Kubernetes(简称K8s)是用于管理容器化应用的开源容器编排器技术。然而,现有的低代码应用进行容器资源配置时,用户通过低代码平台开发应用上线,一般需要手动导出整个低代码应用,通过手动运维的方式进行部署下发,整个部署环节多,而且需要考虑到整个部署细节,一旦应用爆发式增长,对整个系统的运维是灾难性的。
发明内容
基于此,有必要针对上述技术问题,提供一种低代码应用的部署方法、装置、计算机设备、存储介质和计算机程序产品。
第一方面,本申请提供了一种低代码应用的部署方法。所述方法包括:
获取低代码应用的资源配置需求,所述资源配置需求包括所述低代码应用的资源共享类型;
根据所述资源配置需求、历史低代码应用的容器资源的配置信息,确定所述低代码应用的容器资源的配置信息;其中,所述配置信息包括容器资源的额度及标识信息,所述标识信息与所述历史低代码应用的资源共享类型相匹配;
响应于启动部署的触发操作,根据所述低代码应用的容器资源的配置信息,以及容器池中容器资源的剩余额度,对所述低代码应用进行部署。
在一种可能的实现方式中,所述容器池包括多个后端服务节点,每个所述后端服务节点包括预设额度的容器资源,所述配置信息还包括容器资源所属后端服务节点的信息;
所述根据所述资源配置需求、历史低代码应用对应的容器资源的配置信息,确定所述低代码应用的容器资源的配置信息,包括:
在历史低代码应用的容器资源中不存在所述低代码应用所需的容器资源的情况下,根据所述所需的容器资源所属的后端服务节点,将所述所属的后端服务节点的容器资源作为所述低代码应用的容器资源的配置信息。
在一种可能的实现方式中,所述根据所述资源配置需求、历史低代码应用对应的容器资源的配置信息,确定所述低代码应用的容器资源的配置信息,包括:
在所述资源共享类型为非共享类型的情况下,从所述容器池中为所述低代码应用配置专用的容器资源及对应的需求额度;
在所述资源共享类型为共享类型、且性能要求为第一类型的情况下,在历史低代码应用的容器资源上增加预设额度;
在所述资源共享类型为共享类型、且性能要求为第二类型的情况下,将所述历史低代码应用的容器资源作为所述低代码应用容器资源;其中第一类型的性能要求高于第二类型的性能要求。
在一种可能的实现方式中,所述资源配置需求还包括运行数据要素,所述配置信息还包括数据访问位置,所述根据所述资源配置需求、历史低代码应用对应的容器资源的配置信息,确定所述低代码应用的容器资源的配置信息,包括:
根据所述资源配置需求中的运行数据要素,以及运行数据要素与数据访问位置的预设关联关系,确定与所述资源配置需求中的运行数据要素相匹配的数据访问位置,得到所述低代码应用的容器资源的配置信息。
在一种可能的实现方式中,所述根据所述低代码应用的容器资源的配置信息,以及容器池中容器资源的剩余额度,对所述低代码应用的容器资源进行部署,包括:
在所述低代码应用的容器资源的配置信息中的容器资源的需求额度低于所述容器池中容器资源的总额度的情况下,根据所述配置信息,将所述低代码应用后端程序包安装至目标服务器。
在一种可能的实现方式中,还包括:
生成注册触发指令,所述注册触发指令用于指示所述目标服务器向注册中心记录所述低代码应用的配置信息;
在预设时段结束后,调用所述注册中心的接口,以检查所述注册中心是否成功记录所述配置信息。
在一种可能的实现方式中,还包括:
将所述低代码应用的前端程序包安装至目标客户端;
调用所述前端程序包中的前端渲染引擎进行界面渲染,并发送验证信息。
第二方面,本申请还提供了一种低代码应用的部署装置。所述装置包括:
获取模块,用于获取低代码应用的资源配置需求,所述资源配置需求包括所述低代码应用的资源共享类型;
确定模块,用于根据所述资源配置需求、历史低代码应用的容器资源的配置信息,确定所述低代码应用的容器资源的配置信息;其中,所述配置信息包括容器资源的额度及标识信息,所述标识信息与所述历史低代码应用的资源共享类型相匹配;
部署模块,用于响应于启动部署的触发操作,根据所述低代码应用的容器资源的配置信息,以及容器池中容器资源的剩余额度,对所述低代码应用进行部署。
在一种可能的实现方式中,所述容器池包括多个后端服务节点,每个所述后端服务节点包括预设额度的容器资源,所述配置信息还包括容器资源所属后端服务节点的信息;所述确定模块,包括:
第一确定子模块,用于在历史低代码应用的容器资源中不存在所述低代码应用所需的容器资源的情况下,根据所述所需的容器资源所属的后端服务节点,将所述所属的后端服务节点的容器资源作为所述低代码应用的容器资源的配置信息。
在一种可能的实现方式中,所述确定模块,包括:
第二确定子模块,用于在所述资源共享类型为非共享类型的情况下,从所述容器池中为所述低代码应用配置专用的容器资源及对应的需求额度;
第三确定子模块,用于在所述资源共享类型为共享类型、且性能要求为第一类型的情况下,在历史低代码应用的容器资源上增加预设额度;
第四确定子模块,用于在所述资源共享类型为共享类型、且性能要求为第二类型的情况下,将所述历史低代码应用的容器资源作为所述低代码应用容器资源;其中第一类型的性能要求高于第二类型的性能要求。
在一种可能的实现方式中,所述资源配置需求还包括运行数据要素,所述配置信息还包括数据访问位置,所述确定模块,包括:
第五确定子模块,用于根据所述资源配置需求中的运行数据要素,以及运行数据要素与数据访问位置的预设关联关系,确定与所述资源配置需求中的运行数据要素相匹配的数据访问位置,得到所述低代码应用的容器资源的配置信息。
在一种可能的实现方式中,所述部署模块,包括:
后端部署子模块,用于在所述低代码应用的容器资源的配置信息中的容器资源的需求额度低于所述容器池中容器资源的总额度的情况下,根据所述配置信息,将所述低代码应用后端程序包安装至目标服务器。
在一种可能的实现方式中,所述部署模块还包括:
注册子模块,用于生成注册触发指令,所述注册触发指令用于指示所述目标服务器向注册中心记录所述低代码应用的配置信息;
校验子模块,用于在预设时段结束后,调用所述注册中心的接口,以检查所述注册中心是否成功记录所述配置信息。
在一种可能的实现方式中,所述部署模块,还包括:
前端部署子模块,用于将所述低代码应用的前端程序包安装至目标客户端;
调用子模块,用于调用所述前端程序包中的前端渲染引擎进行界面渲染,并发送验证信息。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如本公开实施例任一项所述的低代码应用的部署方法。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如本公开实施例任一项所述的低代码应用的部署方法。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如本公开实施例任一项所述的低代码应用的部署方法。
上述低代码应用的部署方法、装置、计算机设备、存储介质和计算机程序产品,用户只需要上传低代码应用的资源配置需求,以及触发启动部署的操作,即可以根据该低代码应用的资源配置需求以及历史低代码应用的容器资源的配置信息,确定该低代码应用的容器资源的配置信息,从而自动实现低代码应用的部署。有利于提高低代码应用的部署效率。
附图说明
图1为一个实施例中低代码应用的部署方法的应用环境图;
图2为一个实施例中低代码应用的部署方法的第一流程示意图;
图3为另一个实施例中低代码应用的部署方法的第二流程示意图;
图4为一个实施例中低代码应用的部署装置的结构框图;
图5为一个实施例中计算机设备的内部结构图;
图6为一个实施例中低代码应用的部署方法的系统架构图;
图7为一个实施例中低代码应用的部署方法的第三流程示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的低代码应用的部署方法,可以应用于如图1所示的应用环境计算机设备104中。其中,计算机设备104可以包括多台物理计算机实体,可以运行容器编码器程序,例如:Kubernetes、Docker Swarm和Apache Mesos。注册中心服务器106用于存储历史低代码应用对应的容器资源的配置信息。在计算机设备104完成低代码应用前端部署和后端部署以后,计算机设备(低码平台)104可以与应用服务器(云原生集群)108或客户端(一般是浏览器,前端)102之间进行一些验证,客户端102可以通过网络与应用服务器108进行通信。其中,客户端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104(也是通过K8S集群实现)可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种低代码应用的部署方法,以该方法应用于图1中的计算机设备104为例进行说明,包括以下步骤:
步骤S201,获取低代码应用的资源配置需求,所述资源配置需求包括所述低代码应用的资源共享类型。
具体的,所述低代码应用可以包括:通过可视化的应用开发方法,用较少的代码、以较快的速度来交付应用程序,可以是自动化的开发应用。低代码应用不需要经历编译环节,因而需要进行专门部署。所述资源配置需求可以包括低代码应用的资源共享类型和/或容器资源的需求额度,其中,容器资源的需求额度可以包括容器资源的需求数量,例如,K8s中Pod的数量,Pod是K8s中的最小调度单元,在Pod里面运行容器,容器需要指定一个镜像,这样就可以用来运行具体的服务,一个Pod封装一个容器,也可以封装多个容器。在一示例性实施例中,所述资源共享类型可以包括专属资源类型、具有高性能要求的共享资源类型、具有普通性能要求的共享资源类型。其中,专属资源类型可以包括低代码应用需要配置专有的容器资源,不与其他低代码应用共享容器资源;高性能要求的共享资源类型可以包括:低代码应用需要有较多的容器资源额度需求,但可以与其他低代码应用共享同一个容器资源;普通性能要求的共享资源类型可以包括:低代码应用需要有较少的容器资源额度需求,可以与其他低代码应用共享同一个容器资源。需要说明的是,所述资源共享类型的分类可以根据具体的应用场景进行更细粒度的分类,本公开对此不做限制。上述资源配置需求可以以需求表单的形式呈现,用户在表单中填写关于待部署的低代码应用的资源配置需求。
步骤S203,根据所述资源配置需求、历史低代码应用的容器资源的配置信息,确定所述低代码应用的容器资源的配置信息;其中,所述配置信息包括容器资源的额度及标识信息,所述标识信息与所述历史低代码应用的资源共享类型相匹配。
具体的,所述历史低代码应用可以包括已完成部署的低代码应用。所述配置信息可以包括容器资源的额度及标识信息,在一示例性实施例中,例如:历史低代码应用的配置信息可以表示如下:历史低代码应用(后端微服务)A:容器资源10个Pod,共享资源类型;历史低代码应用B:容器资源8个Pod,共享类型;历史低代码应用C:容器资源10个Pod,专属资源类型。在另一示例性实施例中,也可以不显示共享资源类型的具体应用名称。例如:容器资源38个Pod,共享资源类型;容器资源10个Pod,属于低代码应用A的专属资源类型。
本公开实施例中,根据所述资源配置需求,历史低代码应用的容器资源的配置信息,确定低代码应用的容器资源的配置信息。具体的,在所述资源共享类型为非共享类型的情况下,从所述容器池中为所述低代码应用配置专用的容器资源及对应的需求额度;在所述资源共享类型为共享类型、且性能要求为第一类型的情况下,在历史低代码应用对应的容器资源对应的需求额度上增加预设额度;在所述资源共享类型为共享类型、且性能要求为第二类型的情况下,将所述历史低代码应用对应的容器资源作为所述低代码应用容器资源;其中第一类型的性能要求高于第二类型的性能要求。
本公开实施例中,所述标识信息与所述历史低代码应用的资源共享类型相匹配,用于表示资源共享类型。在一示例性实施例中,确定的配置信息在文件格式与资源配置需求可以不相同,其中配置信息属于容器编排器可以识别的文件格式。
步骤S205,响应于启动部署的触发操作,根据所述低代码应用的容器资源的配置信息,以及容器池中容器资源的剩余额度,对所述低代码应用进行部署。
具体的,根据低代码应用的容器资源的配置信息中容器资源的需求额度以及容器池中容器资源的剩余额度,检查容器资源的剩余额度是否满足上述需求额度。所述启动配置的触发操作可以包括展示在页面中的操作控件,例如,点击“一键部署”的控件,表示触发启动配置的功能。根据所述低代码应用的容器资源的配置信息,在将所述低代码应用后端程序包安装至目标服务器,其中,配置信息可以写在配置文件中,在低代码应用运行时,利用配置信息中对应的容器资源处理运行数据。
在一示例性实施例中,上述步骤S201至步骤S205的执行逻辑对应的程序可以写在脚本文件上,在已有的容器编排器(如K8S)上,调用K8S的API Server所提供的RestfulAPI,结合上述脚本文件中的参数动态运行上述执行逻辑,具有方便快捷,可移植性强的有益效果。
上述低代码应用的部署方法中,用户只需要上传低代码应用的资源配置需求,以及触发启动部署的操作,即可以根据该低代码应用的资源配置需求以及历史低代码应用的容器资源的配置信息,确定该低代码应用的容器资源的配置信息,从而自动实现低代码应用的部署。有利于提高低代码应用的部署效率。
在一种可能的实现方式中,所述容器池包括多个后端服务节点,每个所述后端服务节点包括预设额度的容器资源,所述配置信息还包括容器资源所属后端服务节点的信息;
所述根据所述资源配置需求、历史低代码应用对应的容器资源的配置信息,确定所述低代码应用的容器资源的配置信息,包括:
在历史低代码应用的容器资源中不存在所述低代码应用所需的容器资源的情况下,根据所述所需的容器资源所属的后端服务节点,将所述所属的后端服务节点的容器资源作为所述低代码应用的容器资源的配置信息。
具体的,所述后端服务节点可以包括具有预设额度的容器资源的不同功能的微服务应用,具体功能例如:流程表单服务、数据维护服务、综合查询服务、图表服务、报表服务、流程引擎服务、数据导入服务、基础服务、其他服务等。在一示例性实施例中,低代码应用H的资源配置需求包括:来源于后端服务节点x的10个Pod的容器资源;来源于后端服务节点y的10个Pod的容器资源;来源于后端服务节点m的10个Pod的容器资源;来源于后端服务节点n的10个Pod的容器资源。低代码应用H资源共享类型均为共享类型。历史低代码应用的容器资源包括来源于后端服务节点x的10个Pod的容器资源;来源于后端服务节点y的10个Pod的容器资源;来源于后端服务节点z的10个Pod的容器资源;来源于后端服务节点t的10个Pod的容器资源,历史低代码应用的资源共享类型均为共享类型。而由于历史低代码应用的容器资源不存在低代码应用H所需的来源于后端服务节点m和后端服务节点n的容器资源,因此,需要为低代码应用额外配置来源于后端服务节点m的10个Pod的容器资源;来源于后端服务节点n的10个Pod的容器资源。
本公开实施例,对容器池中的容器资源按照功能进行划分,有利于同一功能的容器在空闲状态处理下一个低代码应用。节省了容器资源,提高了容器资源的利用率。
图3为另一个实施例中低代码应用的部署方法的第二流程示意图。参考图3所示,步骤S203包括:
步骤S301,在所述资源共享类型为非共享类型的情况下,从所述容器池中为所述低代码应用配置专用的容器资源及对应的需求额度。
具体的,配置信息中若资源共享类型为非共享类型,例如,低代码应用S的资源配置需求包括:来源于后端服务节点x的10个Pod的非共享类型的资源容器;来源于后端服务节点y的10个Pod的非共享类型的资源容器;来源于后端服务节点m的10个Pod的非共享类型的资源容器;来源于后端服务节点n的10个Pod的非共享类型的资源容器。而历史低代码应用的容器资源的配置信息包括:来源于后端服务节点x的10个Pod的共享类型的资源容器;来源于后端服务节点y的10个Pod的共享类型的资源容器;来源于后端服务节点z的10个Pod的共享类型的资源容器;来源于后端服务节点t的10个Pod的共享类型的资源容器。低代码应用S所需要的资源容器均是非共享类型,需要额外为低代码应用S配置4个功能类型的资源容器:来源于后端服务节点x的10个Pod的非共享类型的资源容器;来源于后端服务节点y的10个Pod的非共享类型的资源容器;来源于后端服务节点m的10个Pod的非共享类型的资源容器;来源于后端服务节点n的10个Pod的非共享类型的资源容器。在一示例性实施例中,可以在每个功能类型的资源容器上添加低代码应用的标识信息。
步骤S303,在所述资源共享类型为共享类型、且性能要求为第一类型的情况下,在历史低代码应用对应的容器资源上增加预设额度。
具体的,配置信息中若资源共享类型为共享类型,且性能要求为第一类型的情况下,第一类型可以以标签的形式呈现,用于标识性能要求的高低程度,例如高性能要求、中等性能要求、普通性能要求,可以根据不同的场景灵活设置。在本公开实施例中,第一类型相对应第二类型的性能要求较高。本公开实施例中,在历史低代码应用的容器资源对应的需求额度上增加预设额度,例如:低代码应用G的资源配置需求包括:来源于后端服务节点x的10个Pod共享类型的资源容器;来源于后端服务节点y的10个Pod共享类型的资源容器;来源于后端服务节点m的10个Pod共享类型的资源容器;来源于后端服务节点n的10个Pod共享类型的资源容器。且4种后端服务节点的性能要求为第一类型(较高的性能要求)。在一示例性实施例中,历史低代码应用的容器资源的配置信息包括:来源于后端服务节点x的10个Pod共享类型的资源容器;来源于后端服务节点y的10个Pod共享类型的资源容器;来源于后端服务节点z的10个Pod共享类型的资源容器;来源于后端服务节点t的10个Pod共享类型的资源容器。由于历史低代码应用的容器资源的配置信息不包含后端服务节点m和后端服务节点n的容器资源,则额外为低代码应用G的添加来源于后端服务节点m的10个Pod共享类型的资源容器;来源于后端服务节点n的10个Pod共享类型的资源容器。由于低代码应用G为高性能要求,因此,在历史低代码应用的容器资源的配置信息上增加预设额度,例如来源于后端服务节点x的10+5个Pod共享类型的资源容器;来源于后端服务节点y的10+5个Pod共享类型的资源容器。其中,增加预设额度是更新历史低代码应用的容器资源的额度,而非增加低代码应用G的容器资源的需求额度。
步骤S305,在所述资源共享类型为共享类型、且性能要求为第二类型的情况下,将所述历史低代码应用对应的容器资源作为所述低代码应用容器资源;其中第一类型的性能要求高于第二类型的性能要求。
具体的,例如:低代码应用K的资源配置需求包括:来源于后端服务节点x的10个Pod共享类型的资源容器;来源于后端服务节点y的10个Pod共享类型的资源容器;来源于后端服务节点m的10个Pod共享类型的资源容器;来源于后端服务节点n的10个Pod共享类型的资源容器,且4种后端服务节点的性能要求为第一类型(较低的性能要求)。历史低代码应用的容器资源的配置信息包括:来源于后端服务节点x的10个Pod共享类型的资源容器;来源于后端服务节点y的10个Pod共享类型的资源容器;来源于后端服务节点z的10个Pod共享类型的资源容器;来源于后端服务节点t的10个Pod共享类型的资源容器。由于历史低代码应用的容器资源的配置信息不包含后端服务节点m和后端服务节点n的容器资源,则额外为低代码应用G的添加来源于后端服务节点m的10个Pod共享类型的资源容器;来源于后端服务节点n的10个Pod共享类型的资源容器。由于低代码应用G为普通性能要求,因此,将历史低代码应用的容器资源的配置信息作为低代码应用的配置信息,例如来源于后端服务节点x的10个Pod共享类型的资源容器;来源于后端服务节点y的10个Pod共享类型的资源容器。
本公开实施例,通过根据低代码应用的资源共享类型(包含性能要求),结合历史低代码应用的配置信息,确定所述低代码应用配置的配置信息,需要说明的是,当低代码应用的配置信息配置完毕后,可以利用该配置信息更新历史低代码应用的配置信息了。能够满足不同的低代码应用对容器资源配置的不同需求,提高了资源配置的适用度。
所述资源配置需求还包括运行数据要素,所述配置信息还包括数据访问位置,所述根据所述资源配置需求、历史低代码应用对应的容器资源的配置信息,确定所述低代码应用的容器资源的配置信息,包括:
根据所述资源配置需求中的运行数据要素,以及运行数据要素与数据访问位置的预设关联关系,确定与所述资源配置需求中的运行数据要素相匹配的数据访问位置,得到所述低代码应用的容器资源的配置信息。
具体的,所述运行数据要素可以包括低代码应用的应用对象,例如行政机构或个人。其中,以银行举例来说,行政机构可以包括分行1、分行2、分行3…。在一示例性实施例中,可以建立运行数据要素与数据访问位置的预设关联关系,参考图6所示,同一个分行的低代码应用对应同一个数据库实例(数据访问位置)。在一示例性实施例中,同一个数据库实例中不同的低代码应用对应不同的存储表单。可以通过添加应用ID后缀区分表名来实现应用的表级隔离。在一示例性实施例中,为提高资源的利用率,对不同应用配置的数据源提供动态加载能力,根据数据源的使用情况,根据一定的指标进行数据库连接池的创建和销毁。运行期提供数据源使用情况的监控,包括调用频次、时长等,根据数据库连接池的活跃情况,采用一定的算法对不活跃的连接池进行降级或者逐出常规列表中,后续在使用时根据当前的资源使用情况进行创建或者扩容。
本公开实施例,根据所述资源配置需求中的运行数据要素,以及运行数据要素与数据访问位置的预设关联关系,确定与所述资源配置需求中的运行数据要素相匹配的数据访问位置,能够提高低代码应用数据的安全性。
在一种可能的实现方式中,所述根据所述低代码应用的容器资源的配置信息,以及容器池中容器资源的总额度,对所述低代码应用的容器资源进行配置,包括:
在所述低代码应用的容器资源的配置信息中的容器资源的需求额度低于所述容器池中容器资源的总额度的情况下,根据所述配置信息,将所述低代码应用后端程序包安装至目标服务器。
具体的,根据所述配置信息,将所述低代码应用后端程序包安装至目标服务器,包括:将所述低代码应用测试环境的主数据同步到生产环境;从生产环境的镜像库拉取生产镜像,基于所述配置信息,将低代码应用的后端程序安装在目标服务器(应用服务器)上。在一示例性实施例中,可以休眠预设时段,这段时间用于给部署的后端程序服务应用启动以及向注册中心注册。在一示例性实施例中,可以通过调用注册中心接口进行检查,确保低代码应用已经成功注册到注册中心服务器,且数量匹配。在一示例性实施例中,还可以通过探针接口,依次发送探针交易,确保部署的的后端程序服务处于就绪状态。
需要说明的是,在对低代码应用进行部署前,需要进行一些环境检测工作,例如,是否可以访问生产环境的镜像库;相关的配置是否已经在配置中心配置完毕;是否可以与生产环境进行正常的通信。检查前端程序配置JSON格式是否正确,检查前端执行引擎和渲染引擎是否可以正常工作。
在一种可能的实现方式中,所述根据所述低代码应用的容器资源的配置信息,以及容器池中容器资源的剩余额度,对所述低代码应用的容器资源进行部署,还包括:
将所述低代码应用的前端程序包安装至目标客户端;
调用所述前端程序包中的前端渲染引擎进行界面渲染,并发送验证信息。
具体的,将低代码应用的前端程序包安装至目标客户端,从组装应用的配置库中读取组装应用的配置文件,校验配置,并调用前端渲染引擎进行渲染。在一示例性实施例中,可以以webhook(例如短信、邮件、站内信)的方式通知用户,进行验证。并更新低代码应用的部署状态。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的低代码应用的部署方法的低代码应用的部署装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个低代码应用的部署装置实施例中的具体限定可以参见上文中对于低代码应用的部署方法的限定,在此不再赘述。
在一种可能的实现方式中,参考图7所示,用户启动后端微服务(低代码应用容器资源的后端部署时,传入低代码应用的ID标识,所述ID标识用于标识当前启动的容器资源属于非共享类型,拥有专属的容器资源池。将应用ID及对应的容器资源注册到注册中心元数据中。当低代码应用启动后,通过该低代码应用的ID以及注册中心的应用ID以及对应的容器资源的对应关系,动态路由至对应的容器资源池中。此外,对于共享类型的,可以根据低代码应用所在的地理区域,路由至对应地理区域的共享容器资源池。
在一个实施例中,如图4所示,提供了一种低代码应用的部署装置,包括:
获取模块401,用于获取低代码应用的资源配置需求,所述资源配置需求包括所述低代码应用的资源共享类型;
确定模块403,用于根据所述资源配置需求、历史低代码应用的容器资源的配置信息,确定所述低代码应用的容器资源的配置信息;其中,所述配置信息包括容器资源的额度及标识信息,所述标识信息与所述历史低代码应用的资源共享类型相匹配;
部署模块405,用于响应于启动部署的触发操作,根据所述低代码应用的容器资源的配置信息,以及容器池中容器资源的剩余额度,对所述低代码应用进行部署。
在一种可能的实现方式中,所述容器池包括多个后端服务节点,每个所述后端服务节点包括预设额度的容器资源,所述配置信息还包括容器资源所属后端服务节点的信息;所述确定模块,包括:
第一确定子模块,用于在历史低代码应用的容器资源中不存在所述低代码应用所需的容器资源的情况下,根据所述所需的容器资源所属的后端服务节点,将所述所属的后端服务节点的容器资源作为所述低代码应用的容器资源的配置信息。
在一种可能的实现方式中,所述确定模块,包括:
第二确定子模块,用于在所述资源共享类型为非共享类型的情况下,从所述容器池中为所述低代码应用配置专用的容器资源及对应的需求额度;
第三确定子模块,用于在所述资源共享类型为共享类型、且性能要求为第一类型的情况下,在历史低代码应用的容器资源上增加预设额度;
第四确定子模块,用于在所述资源共享类型为共享类型、且性能要求为第二类型的情况下,将所述历史低代码应用的容器资源作为所述低代码应用容器资源;其中第一类型的性能要求高于第二类型的性能要求。
在一种可能的实现方式中,所述资源配置需求还包括运行数据要素,所述配置信息还包括数据访问位置,所述确定模块,包括:
第五确定子模块,用于根据所述资源配置需求中的运行数据要素,以及运行数据要素与数据访问位置的预设关联关系,确定与所述资源配置需求中的运行数据要素相匹配的数据访问位置,得到所述低代码应用的容器资源的配置信息。
在一种可能的实现方式中,所述部署模块,包括:
后端部署子模块,用于在所述低代码应用的容器资源的配置信息中的容器资源的需求额度低于所述容器池中容器资源的总额度的情况下,根据所述配置信息,将所述低代码应用后端程序包安装至目标服务器。
在一种可能的实现方式中,所述部署模块还包括:
注册子模块,用于生成注册触发指令,所述注册触发指令用于指示所述目标服务器向注册中心记录所述低代码应用的配置信息;具体的,注册子模块,用于将确定当前容器资源启动属于哪个容器资源池(哪个功能结点)。将上述信息保存到注册中心中,当低码应用使用时通过网关调用后端微服务,通过低码应用的一些信息确定分发到后端哪个后端服务节点处理业务逻辑。
校验子模块,用于在预设时段结束后,调用所述注册中心的接口,以检查所述注册中心是否成功记录所述配置信息。
在一种可能的实现方式中,所述部署模块,还包括:
前端部署子模块,用于将所述低代码应用的前端程序包安装至目标客户端;
调用子模块,用于调用所述前端程序包中的前端渲染引擎进行界面渲染,并发送验证信息。
上述低代码应用的部署装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种低代码应用的部署方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种低代码应用的部署方法,其特征在于,所述方法包括:
获取低代码应用的资源配置需求,所述资源配置需求包括所述低代码应用的资源共享类型;
根据所述资源配置需求、历史低代码应用的容器资源的配置信息,确定所述低代码应用的容器资源的配置信息;其中,所述配置信息包括容器资源的额度及标识信息,所述标识信息与所述历史低代码应用的资源共享类型相匹配;
响应于启动部署的触发操作,根据所述低代码应用的容器资源的配置信息,以及容器池中容器资源的剩余额度,对所述低代码应用进行部署。
2.根据权利要求1所述的方法,其特征在于,所述容器池包括多个后端服务节点,每个所述后端服务节点包括预设额度的容器资源,所述配置信息还包括容器资源所属后端服务节点的信息;
所述根据所述资源配置需求、历史低代码应用对应的容器资源的配置信息,确定所述低代码应用的容器资源的配置信息,包括:
在历史低代码应用的容器资源中不存在所述低代码应用所需的容器资源的情况下,根据所述所需的容器资源所属的后端服务节点,将所述所属的后端服务节点的容器资源作为所述低代码应用的容器资源的配置信息。
3.根据权利要求1所述的方法,其特征在于,所述根据所述资源配置需求、历史低代码应用对应的容器资源的配置信息,确定所述低代码应用的容器资源的配置信息,包括:
在所述资源共享类型为非共享类型的情况下,从所述容器池中为所述低代码应用配置专用的容器资源及对应的需求额度;
在所述资源共享类型为共享类型、且性能要求为第一类型的情况下,在历史低代码应用的容器资源上增加预设额度;
在所述资源共享类型为共享类型、且性能要求为第二类型的情况下,将所述历史低代码应用的容器资源作为所述低代码应用容器资源;其中第一类型的性能要求高于第二类型的性能要求。
4.根据权利要求1所述的方法,其特征在于,所述资源配置需求还包括运行数据要素,所述配置信息还包括数据访问位置,所述根据所述资源配置需求、历史低代码应用对应的容器资源的配置信息,确定所述低代码应用的容器资源的配置信息,包括:
根据所述资源配置需求中的运行数据要素,以及运行数据要素与数据访问位置的预设关联关系,确定与所述资源配置需求中的运行数据要素相匹配的数据访问位置,得到所述低代码应用的容器资源的配置信息。
5.根据权利要求1所述的方法,其特征在于,所述根据所述低代码应用的容器资源的配置信息,以及容器池中容器资源的剩余额度,对所述低代码应用的容器资源进行部署,包括:
在所述低代码应用的容器资源的配置信息中的容器资源的需求额度低于所述容器池中容器资源的总额度的情况下,根据所述配置信息,将所述低代码应用后端程序包安装至目标服务器。
6.根据权利要求5所述的方法,其特征在于,还包括:
生成注册触发指令,所述注册触发指令用于指示所述目标服务器向注册中心记录所述低代码应用的配置信息;
在预设时段结束后,调用所述注册中心的接口,以检查所述注册中心是否成功记录所述配置信息。
7.根据权利要求5所述的方法,其特征在于,还包括:
将所述低代码应用的前端程序包安装至目标客户端;
调用所述前端程序包中的前端渲染引擎进行界面渲染,并发送验证信息。
8.一种低代码应用的部署装置,其特征在于,所述装置包括:
获取模块,用于获取低代码应用的资源配置需求,所述资源配置需求包括所述低代码应用的资源共享类型;
确定模块,用于根据所述资源配置需求、历史低代码应用的容器资源的配置信息,确定所述低代码应用的容器资源的配置信息;其中,所述配置信息包括容器资源的额度及标识信息,所述标识信息与所述历史低代码应用的资源共享类型相匹配;
部署模块,用于响应于启动部署的触发操作,根据所述低代码应用的容器资源的配置信息,以及容器池中容器资源的剩余额度,对所述低代码应用进行部署。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的低代码应用的部署方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的低代码应用的部署方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310869504.6A CN116909684A (zh) | 2023-07-14 | 2023-07-14 | 低代码应用的部署方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310869504.6A CN116909684A (zh) | 2023-07-14 | 2023-07-14 | 低代码应用的部署方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116909684A true CN116909684A (zh) | 2023-10-20 |
Family
ID=88359708
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310869504.6A Pending CN116909684A (zh) | 2023-07-14 | 2023-07-14 | 低代码应用的部署方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116909684A (zh) |
-
2023
- 2023-07-14 CN CN202310869504.6A patent/CN116909684A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113204580A (zh) | 水上目标位置信息查询方法、系统、装置、设备和介质 | |
CN114401187B (zh) | 灰度发布方法、装置、计算机设备和存储介质 | |
CN118051344A (zh) | 硬件资源的分配方法、装置、硬件资源管理系统 | |
CN114218156A (zh) | 数据导出方法、装置、计算机设备和存储介质 | |
CN116708245A (zh) | 一种接口控制方法、装置、计算机设备 | |
CN116071123A (zh) | 商品数据处理方法、系统、电子设备及存储介质 | |
CN116909684A (zh) | 低代码应用的部署方法、装置、计算机设备和存储介质 | |
CN111880996B (zh) | 一种裸机数据采集方法、装置、设备及可读存储介质 | |
CN114756293A (zh) | 业务处理方法、装置、计算机设备和存储介质 | |
CN115118612A (zh) | 资源配额管理方法、装置、计算机设备和存储介质 | |
CN114489951A (zh) | 目标应用的容器管理方法、装置、电子设备及存储介质 | |
CN114237871A (zh) | 云资源的编排方法、装置、计算机设备和存储介质 | |
CN115604667B (zh) | 消息发送方法、装置、计算机设备和存储介质 | |
CN118018552A (zh) | 基于中间件的集群服务部署方法、装置和计算机设备 | |
CN117331817A (zh) | 测试数据获取方法、装置、计算机设备和存储介质 | |
CN117056220A (zh) | 批量作业的测试方法、装置、计算机设备和存储介质 | |
CN117632297A (zh) | 应用的热刷新方法、装置、设备及存储介质 | |
CN117632009A (zh) | 基于业务应用的数据存储方法、装置和计算机设备 | |
CN115729576A (zh) | 应用部署方法、装置、计算机设备和存储介质 | |
CN118193083A (zh) | 一种软件资源加载方法、装置、计算机设备、存储介质 | |
CN116594770A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN116069865A (zh) | 库存共享方法、装置、计算机设备和存储介质 | |
CN117270880A (zh) | 插件服务私有化部署方法、装置、计算机设备和存储介质 | |
CN118586499A (zh) | 人工智能模型运行方法和计算机设备 | |
CN118555180A (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 |