持续交付实现方法及装置制造方法及图纸

技术编号:33479557 阅读:15 留言:0更新日期:2022-05-19 00:54
本发明专利技术实施例提供了一种持续交付实现方法及装置。该方法包括:主节点从注册中心获取已注册的代理节点的实例,并向所述代理节点发送配置指令;所述代理节点根据所述配置指令进行应用的发布配置;当应用的发布申请审批通过后,通过所述代理节点发布所述应用。通过本发明专利技术,解决了将发布应用、代理实例和审批流程联动起来,减少了更改和审核时间,使得发布流程更加规范化。因此,可以解决相关技术中软件交付发布平台配置复杂且缺少审批流程的问题,达到降低发布风险的效果。到降低发布风险的效果。到降低发布风险的效果。

【技术实现步骤摘要】
持续交付实现方法及装置


[0001]本专利技术实施例涉及计算机领域,具体而言,涉及一种持续交付实现方法及装置。

技术介绍

[0002]在传统的软件开发方法中,每个功能更新或修复错误都会每隔一段时间进行发布,这显著增加了在部署时耦合更改的机会。随着时间的推移,问题开始增加,会给企业带来了更多挑战。而且传统部署方式主要采取人工手动部署、手动上传部署包、手动执行停止以及启动等脚本,如果项目是集群部署,集群下相应的所有机器都需要更新,运维精力和时间成本较大,并且人工发布代码出错率太高,且如果程序出错,又要进行一些列回滚操作,反复如此,会严重影响交付效率及质量。
[0003]在现代软件开发实践中,持续交付(CD)是构建、测试应用程序并将其部署到生产中的基础。CD在弥合开发团队之间的差距方面起着关键作用,有助于降低风险,并通过自动化更改来自不同项目开发人员的多个代码以实现生产一致性。此外,CD使开发人员能够无缝地将集成代码交付到生产中,从而提供快速有效的自动化流程,以向客户轻松发布新功能和更新。
[0004]现有持续交付发布平台均是以阶段/任务形式,需要配置在流水线中,以流水线形式进行发布,配置较为复杂,且发布时不能保证制品是完成可用的,这样发布成功率较低;同时,还缺少审批流程,无法保证发布流程的透明性和规范性;以及缺少相应发布策略,只针对单个制品发布,无法满足如金丝雀发布等策略。

技术实现思路

[0005]本专利技术实施例提供了一种持续交付实现方法及装置,以至少解决相关技术中软件交付发布平台配置复杂且缺少审批流程的问题。
[0006]根据本专利技术的一个实施例,提供了一种持续交付实现方法,包括:主节点从注册中心获取已注册的代理节点的实例,并向所述代理节点发送配置指令;所述代理节点根据所述配置指令进行应用的发布配置;当应用的发布申请审批通过后,通过所述代理节点发布所述应用。
[0007]在一个示例性实施例中,主节点从注册中心获取已注册并授权的代理实例之前,还包括:将所述代理节点注册到所述注册中心上,并由所述注册中心监控所述代理节点的健康状态。
[0008]在一个示例性实施例中,其中,所述应用的发布配置至少包括以下字段:发布名称、发布路径、启动脚本和停止脚本。
[0009]在一个示例性实施例中,进行应用的发布配置,还包括:选择在代理节点上配置简单发布策略,或在发布组上配置金丝雀发布策略,其中,多个代理节点组成发布组。
[0010]在一个示例性实施例中,所述代理节点根据所述配置指令进行应用的发布配置包括:所述代理节点接收到配置指令后,根据操作系统类型执行内部封装的相应的方法以进
行应用的发布配置。
[0011]在一个示例性实施例中,通过所述代理节点发布所述应用之前,还包括:将应用发布申请单提交初次审批;在所述初次审批通过后进行最终审批,并在所述最终审批通过后发布所述应用;当所述初次审批或最终审批不通过则驳回所述应用发布申请单。
[0012]在一个示例性实施例中,所述代理节点执行的方法至少包括以下之一:文件操作、系统监控、命令处理。
[0013]根据本专利技术的另一个实施例,提供了一种持续交付实现装置,包括:主节点,用于从注册中心获取已注册的代理节点的实例,并向所述代理节点发送配置指令;代理节点,用于根据所述配置指令进行应用的发布配置;发布模块,用于当应用的发布申请审批通过后,通过所述代理节点发布所述应用。
[0014]在一个示例性实施例中,还可以包括,注册中心,用于监控注册在所述注册中心的代理节点的健康状态。
[0015]在一个示例性实施例中,所述发布模块,包括:配置单元,用于选择在代理节点上配置简单发布策略,或在发布组上配置金丝雀发布策略,其中,多个代理节点组成发布组。
[0016]根据本专利技术的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
[0017]根据本专利技术的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
[0018]通过本专利技术,将发布应用、代理实例和审批流程联动起来,减少了更改和审核时间,使得发布流程更加规范化。因此,可以解决相关技术中软件交付发布平台配置复杂且缺少审批流程的问题,达到降低发布风险的效果。
附图说明
[0019]图1是本专利技术实施例的运行持续交付实现方法的移动终端的硬件结构框图;
[0020]图2是根据本专利技术实施例的主节点

代理节点(Master

Agent)的网络架构图;
[0021]图3是根据本专利技术实施例的持续交付实现方法的流程图;
[0022]图4是根据本专利技术实施例的持续交付实现装置的结构框图;
[0023]图5是根据本专利技术另一实施例的持续交付实现装置的结构框图;
[0024]图6是根据本专利技术实施例的自定义Agent的示意图;
[0025]图7是根据本专利技术实施例的自定义Master的示意图;
[0026]图8是根据本专利技术实施例的发布审批方法流程图。
具体实施方式
[0027]下文中将参考附图并结合实施例来详细说明本专利技术的实施例。
[0028]需要说明的是,本专利技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
[0029]为了便于对本专利技术所提供的技术方案的理解,下面对相关专业术语进行解释。
[0030]简单发布:简单发布会在发布之前关闭所有服务,停止用户访问,然后一次性升级所有服务。由于每次进行简单发布时要关闭所有服务,所以这种发布策略的频率较低,发布之前必须要做好充足的测试。简单发布不适合互联网公司,因为两次发布时间间隔太久,从功能特性提出到进入市场的时间太长,对市场反应不敏感,会在充分竞争的市场里处于下风。每次发布因为要停机,也会带来经济损失。
[0031]简单发布优势在于:因为每次发布都针对所有服务,所以不用考虑新旧版本的兼容性,发布过程足够简单。
[0032]其存在的劣势包括:发布过程中,服务不可用;只能在业务低峰时期进行,例如夜间;一旦服务出现漏洞,需要对所有服务进行回滚,成本较高。
[0033]后端在执行发布策略时会根据路由控制转发到相应的发布Handler中,简单发布Handler封装了该策略业务逻辑,遍历所有发布应用,每个发布应用调用底层已封装好的单服务发布Handler,循环发布。
[0034]金丝雀发布:该发布策略旨在降低发布风险,用真实的用户流量来测试一小部分新版本,来保证软件不会出现严重问题。通常在实际使用中,会先发布一小比例的机器,比如所有服务器的10%做流量验证,然后快速得到反馈,根据反馈结果来决定是继续发布还是进行本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种持续交付实现方法,其特征在于,包括:主节点从注册中心获取已注册的代理节点的实例,并向所述代理节点发送配置指令;所述代理节点根据所述配置指令进行应用的发布配置;当应用的发布申请审批通过后,通过所述代理节点发布所述应用。2.根据权利要求1所述的方法,其特征在于,主节点从注册中心获取已注册并授权的代理实例之前,还包括:将所述代理节点注册到所述注册中心上,并由所述注册中心监控所述代理节点的健康状态。3.根据权利要求1所述的方法,其特征在于,其中,所述应用的发布配置至少包括以下字段:发布名称、发布路径、启动脚本和停止脚本。4.根据权利要求3所述的方法,其特征在于,进行应用的发布配置还包括:选择在代理节点上配置简单发布策略,或在发布组上配置金丝雀发布策略,其中,多个代理节点组成发布组。5.根据权利要求1所述的方法,其特征在于,所述代理节点根据所述配置指令进行应用的发布配置包括:所述代理节点接收到配置指令后,根据操作系统类型执行内部封装的相应的方法以进行应用的发布配置。6.根据权利要求1所述的方法,其特征在于,通过所述代理节点发布所述应用之前,还包括:将应用发布申请单提交初次审批;在所述初次审批通过后进行最终审批,并在所述最终审批通过后...

【专利技术属性】
技术研发人员:高春祥马龙飞张晓艺赵静张荣臻吴海洋向小佳黄时光丁永建李璠
申请(专利权)人:中国光大银行股份有限公司
类型:发明
国别省市:

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

1