一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种不同版本之间配置继承更新方法及装置与流程

2022-11-23 17:18:42 来源:中国专利 TAG:


1.本技术属于软件管理技术领域,具体地讲,涉及一种不同版本之间配置继承更新方法及装置。


背景技术:

2.对于多版本共存的服务,同一个服务的不同版本都有各自的参数,例如数据库ip,在软件交付的生命周期里,开发、测试和生产环境的数据库信息是不一致的。然而在一个环境中,同一个服务可能会有很多版本,比如在测试环境可能要保留1月版,2月版和当前3月版,每个月版本对应的数据库是同一个,在理想情况下这些版本的配置值是一致的,在版本交付的生命周期中,版本包作为最小的发布单元,带着配置信息随版本包交付到开发、测试和生产环境中。但是在真实情况下,不同环境对应的版本值是不一样的,每一次版本导入,都需要针对当前环境在配置管理系统中重新维护一次数据。
3.在现有技术中,由于版本参数全量的带出,在不同的环境下需要根据环境在配置管理系统维护配置信息,比如版本带出的是测试环境的参数值,那么在生产环境需要根据实际情况修改对应的参数值,如果每次发版都做一次全量的修改,那么会导致手工维护的成本大和风险高。


技术实现要素:

4.本技术提供了一种不同版本之间配置继承更新方法及装置,以至少解决当前现有技术中,由于版本参数全量的带出,在不同的环境下需要根据环境在配置管理系统维护配置信息而导致的高成本问题。
5.根据本技术的一个方面,提供了一种不同版本之间配置继承更新方法,包括:
6.获取预先构建的版本包;
7.根据版本包匹配当前环境下最新的相同配置;
8.在版本包安装时,根据版本包中的版本号和环境信息获取对应的配置新信息,并将配置信息应用到当前环境中。
9.在一实施例中,根据版本包匹配当前环境下最新的相同配置,包括:
10.从版本包中提取环境信息、配置信息及环境信息;
11.确定当前环境下最新的相同配置;
12.继承当前环境下最新的相同配置。
13.在一实施例中,确定当前环境下最新的相同配置,包括:
14.如果当前某一阈值比例的配置都落入同一个版本时,则直接获取此版本的所有参数作为当前环境下最新的相同配置;
15.如果当前某一阈值比例的配置无法落入同一个版本时,则直接跳过继承流程。
16.在一实施例中,不同版本之间配置继承更新方法还包括:
17.在获得可继承的版本后,将该可继承的版本进行存储。
18.在一实施例中,不同版本之间配置继承更新方法还包括:
19.根据各类版本的配置和元数据信息构建至版本包中。
20.在一实施例中,不同版本之间配置继承更新方法还包括:
21.在接收到配置出发指令后,再从外部获取版本包。
22.在一实施例中,不同版本之间配置继承更新方法还包括:
23.在获得可继承的版本后,将该可继承的版本进行存储。
24.根据本技术的另一个方面,还提供了一种不同版本之间配置继承更新装置,包括:
25.获取单元,用于获取预先构建的版本包;
26.匹配单元,用于根据版本包匹配当前环境下最新的相同配置;
27.安装单元,用于在版本包安装时,根据版本包中的版本号和环境信息获取对应的配置新信息,并将配置信息应用到当前环境中。
28.在一实施例中,匹配单元包括:
29.提取模块,用于从版本包中提取环境信息、配置信息及环境信息;
30.配置确定模块,用于确定当前环境下最新的相同配置;
31.继承模块,用于继承当前环境下最新的相同配置。
32.在一实施例中,配置确定模块包括:
33.第一判断模块,用于如果当前某一阈值比例的配置都落入同一个版本时,则直接获取此版本的所有参数作为当前环境下最新的相同配置;
34.第二判断模块,用于如果当前某一阈值比例的配置无法落入同一个版本时,则直接跳过继承流程。
35.在一实施例中,不同版本之间配置继承更新装置还包括:
36.存储模块,用于在获得可继承的版本后,将该可继承的版本进行存储。
37.在一实施例中,不同版本之间配置继承更新装置还包括:
38.构建模块,用于根据各类版本的配置和元数据信息构建至版本包中。
39.在一实施例中,不同版本之间配置继承更新装置还包括:
40.版本包获取模块,用于在接收到配置出发指令后,再从外部获取版本包。
41.本技术通过构建程序、配置、元数据等信息生成构建包,构建包为可发布的最小单元。流水线触发配置管理系统下载构建包并导入相关配置信息,导入时,通过算法找到上一版本配置,继承上一版本已存在的配置值,使得运维人员只需修改本次新增且需要根据环境重新设值的配置,无需修改上个版本已经维护过的配置。构建包在各服务节点安装时,根据环境去配置中心获取配置清单并生效在当前服务节点。
附图说明
42.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
43.图1为本技术提供的一种不同版本之间配置继承更新的方法流程图。
44.图2为本技术实施例中根据版本包匹配当前环境下最新的相同配置的流程图。
45.图3为本技术实施例中确定当前环境下最新的相同配置的流程图。
46.图4为本技术实施例中配置在软件版本交付的生命周期中的流转图。
47.图5为本技术实施例中配置导入生效的流程图。
48.图6为本技术提供的一种不同版本之间配置继承更新装置结构框图。
49.图7为本技术实施例中匹配单元的结构框图。
50.图8为本技术实施例中配置确定模块的结构框图。
51.图9为本技术实施例中一种电子设备的具体实施方式。
具体实施方式
52.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
53.随着配置信息的不断增加,在不同环境配置运维越来越繁琐,每一次发版都需要针对当前环境,对大量配置进行修改,为提高配置运维效率,降低配置运维风险,本技术提供了一种多版本之间配置继承更新的方法及装置。
54.如图1所示,为本技术提供的一种不同版本之间配置继承更新的方法,包括:
55.s101:获取预先构建的版本包。
56.s102:根据版本包匹配当前环境下最新的相同配置。
57.s103:在版本包安装时,根据版本包中的版本号和环境信息获取对应的配置新信息,并将配置信息应用到当前环境中。
58.在一实施例中,根据版本包匹配当前环境下最新的相同配置,如图2所示,包括:
59.s201:从版本包中提取环境信息、配置信息及环境信息。
60.s202:确定当前环境下最新的相同配置。
61.s203:继承当前环境下最新的相同配置。
62.在一实施例中,确定当前环境下最新的相同配置,如图3所示,包括:
63.s301:如果当前某一阈值比例的配置都落入同一个版本时,则直接获取此版本的所有参数作为当前环境下最新的相同配置。
64.s302:如果当前某一阈值比例的配置无法落入同一个版本时,则直接跳过继承流程。
65.在一实施例中,不同版本之间配置继承更新方法还包括:
66.在获得可继承的版本后,将该可继承的版本进行存储。
67.在一实施例中,不同版本之间配置继承更新方法还包括:
68.根据各类版本的配置和元数据信息构建至版本包中。
69.在一实施例中,不同版本之间配置继承更新方法还包括:
70.在接收到配置出发指令后,再从外部获取版本包。
71.在一具体实施例中,图4为配置在软件版本交付的生命周期中的流转图:
72.通过构建程序,配置,元数据等信息生成构建包,构建包为可发布的最小单元。流水线触发配置管理系统下载构建包导入相关配置信息,导入时,通过算法找到上一版本配
置,继承上一版本已存在的配置值,运维人员只需修改本次新增且需要根据环境重新设值的配置,无需修改上个版本已经维护过的配置。构建包在各服务节点安装时,根据环境去配置中心获取配置清单并生效在当前服务节点。
73.101元数据管理模块:定义分布式应用自身的元数据信息,如版本信息、将会部署到的运行环境信息等。
74.102配置定义模块:应用将当前服务的全量配置定义,包括配置的名称,值,描述等信息,以csv的形式放置在相关路径;
75.103配置构建模块:构建平台将配置信息及程序等构建至版本包,配置信息随版本包流转带出至配置管理系统;
76.104配置维护模块其中包括:
77.配置管理系统获取版本包,得到当前版本包的配置信息和需要部署的环境信息,参数版本信息等;
78.根据环境信息,配置信息,通过关键字段的hash值,匹配当前环境下最新的相同配置(如果有相同版本配置信息则继承相同版本信息,如果没有则继承最新的),当前10个百分点的配置都落在了同一个版本时,则直接查出此版本的所有参数,作为可继承的版本。如果前10个百分点都无法获取对应可继承版本,则直接跳过继承流程。获得可继承版本后,导入的版本配置,继承可继承版本配置值后存储到配置管理系统。同一个版本在系统内只保存一份配置信息。
79.105配置生效模块:如图5所示,版本包安装时,根据版本号和环境等信息从配置管理系统获取对应的配置信息,将配置信息生效到当前环境。
80.基于同一发明构思,本技术实施例还提供了一种不同版本之间配置继承更新装置,可以用于实现上述实施例中所描述的方法,如下面实施例所述。由于该不同版本之间配置继承更新装置解决问题的原理与不同版本之间配置继承更新方法相似,因此不同版本之间配置继承更新装置的实施可以参见不同版本之间配置继承更新方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的系统较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
81.根据本技术的另一个方面,还提供了一种不同版本之间配置继承更新装置,如图6所示,包括:
82.获取单元601,用于获取预先构建的版本包;
83.匹配单元602,用于根据版本包匹配当前环境下最新的相同配置;
84.安装单元603,用于在版本包安装时,根据版本包中的版本号和环境信息获取对应的配置新信息,并将配置信息应用到当前环境中。
85.在一实施例中,如图7所示,匹配单元602包括:
86.提取模块701,用于从版本包中提取环境信息、配置信息及环境信息;
87.配置确定模块702,用于确定当前环境下最新的相同配置;
88.继承模块703,用于继承当前环境下最新的相同配置。
89.在一实施例中,如图8所示,配置确定模块702包括:
90.第一判断模块801,用于如果当前某一阈值比例的配置都落入同一个版本时,则直
接获取此版本的所有参数作为当前环境下最新的相同配置;
91.第二判断模块802,用于如果当前某一阈值比例的配置无法落入同一个版本时,则直接跳过继承流程。
92.在一实施例中,不同版本之间配置继承更新装置还包括:
93.存储模块,用于在获得可继承的版本后,将该可继承的版本进行存储。
94.在一实施例中,不同版本之间配置继承更新装置还包括:
95.构建模块,用于根据各类版本的配置和元数据信息构建至版本包中。
96.在一实施例中,不同版本之间配置继承更新装置还包括:
97.版本包获取模块,用于在接收到配置出发指令后,再从外部获取版本包。
98.本技术提供的不同版本之间配置继承更新方法及装置具备不同环境的配置管理能力,通过自动继承,减少手工操作,降低操作风险,提升运维效率。
99.本技术的实施例还提供能够实现上述实施例中的方法中全部步骤的一种电子设备的具体实施方式,参见图9,所述电子设备具体包括如下内容:
100.处理器(processor)901、内存902、通信接口(communications interface)903、总线904和非易失性存储器905;
101.其中,所述处理器901、内存902、通信接口903通过所述总线904完成相互间的通信;
102.所述处理器901用于调用所述内存902和非易失性存储器905中的计算机程序,所述处理器执行所述计算机程序时实现上述实施例中的方法中的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
103.s101:获取预先构建的版本包。
104.s102:根据版本包匹配当前环境下最新的相同配置。
105.s103:在版本包安装时,根据版本包中的版本号和环境信息获取对应的配置新信息,并将配置信息应用到当前环境中。
106.本技术的实施例还提供能够实现上述实施例中的方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
107.s101:获取预先构建的版本包。
108.s102:根据版本包匹配当前环境下最新的相同配置。
109.s103:在版本包安装时,根据版本包中的版本号和环境信息获取对应的配置新信息,并将配置信息应用到当前环境中。
110.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于硬件 程序类实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。虽然本说明书实施例提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或终端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例
如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书实施例的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。以上所述仅为本说明书实施例的实施例而已,并不用于限制本说明书实施例。对于本领域技术人员来说,本说明书实施例可以有各种更改和变化。凡在本说明书实施例的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书实施例的权利要求范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献