[发明专利]一种提升微服架构程序发布效率的方法及系统在审
| 申请号: | 202210212472.8 | 申请日: | 2022-03-04 |
| 公开(公告)号: | CN114564185A | 公开(公告)日: | 2022-05-31 |
| 发明(设计)人: | 陈益强;任姗;孔新峰 | 申请(专利权)人: | 山东产业技术研究院智能计算研究院 |
| 主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F8/41;G06F8/70;G06F9/455 |
| 代理公司: | 济南圣达知识产权代理有限公司 37221 | 代理人: | 张勇 |
| 地址: | 250000 山东省济*** | 国省代码: | 山东;37 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 提升 微服 架构 程序 发布 效率 方法 系统 | ||
1.一种提升微服架构程序发布效率的方法,其特征在于,包括:
将开发完的代码提交至代码托管平台,其中,所述代码开发基于微服务架构实现,将系统根据功能分解为不同的服务,由不同的开发人员进行实现;
流水线作业平台接收代码托管平台的触发信号后,通过云端服务器完成代码的编译构建,获得可运行的应用程序;
将获得的应用程序存储入程序库,并将应用程序打包为镜像服务;
对远程服务器环境进行分析判断,获得发布环境;其中,所述远程服务器环境的分析判断包括手工配置环境的判断和自适应发布环境的判断;所述发布环境包括Kubernetes容器云环境、Docker环境以及裸机环境;
基于获得的发布环境,实现应用程序在远程服务器上的发布。
2.如权利要求1所述的一种提升微服架构程序发布效率的方法,其特征在于,所述Kubernetes容器云环境的判断具体为:运行kubectl版本查询脚本命令,若输出结果中含有服务器版本信息且版本信息内容不为空,则发布环境具备Kubernetes容器云环境;
或,
所述Docker环境的判断具体为:运行docker系统信息查询脚本命令,若输出结果中含有服务器信息且服务器版本内容不为空,则发布环境具备Docker环境;
或,
所述裸机环境的判断具体为:运行java版本查询脚本命令,若输出结果不为空且含有版本关键字,则发布环境具备裸机环境。
3.如权利要求1所述的一种提升微服架构程序发布效率的方法,其特征在于,所述对远程服务器环境进行分析判断,获得发布环境,具体满足如下优先级:Kubernetes容器云环境Docker环境裸机环境。
4.如权利要求1所述的一种提升微服架构程序发布效率的方法,其特征在于,所述手工配置环境的判断,具体为:预先指定程序发布环境,通过自适应发布环境的判断方式,判断待发布远程服务器是否具备指定程序发布环境,若是,则按照指定程序发布环境进行发布;若否,则按照待发布远程服务器具备的程序发布环境及优先级进行发布。
5.如权利要求1所述的一种提升微服架构程序发布效率的方法,其特征在于,所述将开发完的代码提交至代码托管平台,具体的:不同开发人员开发的代码上传至代码托管平台中,并通过相关开源平台执行代码的自动流水化作业;其中,所述相关开源平台采用账号统一创建方式,对于同一用户在不同开源平台创建相同的用户信息。
6.如权利要求1所述的一种提升微服架构程序发布效率的方法,其特征在于,所述开源平台包括Jenkins、Docker、GitLab、Harbor、Nexus、Maven、Sonar以及Zabbix。
7.如权利要求1所述的一种提升微服架构程序发布效率的方法,其特征在于,流水线作业平台接收代码托管平台的触发信号后,通过云端服务器完成代码的编译构建,具体的:开发人员提交代码后,代码托管平台触发push信号,流水作业平台配置的GitLab webhook,对push信号作出触发反应,启动自动化流水线作业。
8.如权利要求1所述的一种提升微服架构程序发布效率的方法,其特征在于,所述代码托管平台采用GitLab平台,所述流水作业平台采用Jenkins平台。
9.如权利要求1所述的一种提升微服架构程序发布效率的方法,其特征在于,将获得的应用程序存储入程序库,并将应用程序打包为镜像服务,具体为:将构建的应用程序直接推入程序库中,实现打包程序的版本管理以及远程服务器的直接下载;将可运行的应用程序,通过Docker的形式打包为Docker镜像服务。
10.一种提升微服架构程序发布效率的系统,其特征在于,包括:
托管单元,其用于将开发完的代码提交至代码托管平台,其中,所述代码开发基于微服务架构实现,将系统根据功能分解为不同的服务,由不同的开发人员进行实现;
编译单元,其用于流水线作业平台接收代码托管平台的触发信号后,通过云端服务器完成代码的编译构建,获得可运行的应用程序;
存储单元,其用于将获得的应用程序存储入程序库,并将应用程序打包为镜像服务;
环境判断单元,其用于对远程服务器环境进行分析判断,获得发布环境;其中,所述远程服务器环境的分析判断包括手工配置环境的判断和自适应发布环境的判断;所述发布环境包括Kubernetes容器云环境、Docker环境以及裸机环境;
发布单元,其用于基于获得的发布环境,实现应用程序在远程服务器上的发布。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东产业技术研究院智能计算研究院,未经山东产业技术研究院智能计算研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210212472.8/1.html,转载请声明来源钻瓜专利网。





