应用配置方法及装置与流程

文档序号:31956577发布日期:2022-10-28 22:23阅读:30来源:国知局
1.本发明涉及网络安全
技术领域
:,尤其涉及应用配置方法及装置。
背景技术
::2.应用配置和软件介质安装是应用部署的重要组成部分。随着分布式架构环境以及微服务化场景的不断推广,对于大型系统,例如大型的银行系统,应用配置的高效正确实施以及软件制品的快速部署已经越发得到关注。3.目前对于大型系统微服务化后,每个微服务及对应多份应用配置、单一配置文件中的配置项甚至达到成百上千行。任何一处应用配置错误对于版本部署的正确性都是致命的。4.另外结合并行开发测试场景,整个开发测试流程中涉及到多个部署环境并行部署的场景,而且每个部署环境对应的版本也不尽相同,这对应用配置管理提出了极大的挑战。5.现有技术的不足在于,目前还没有技术方案来支持应用在大规模配置、多套部署环境、多个版本的配置下进行配置。技术实现要素:6.本发明实施例提供一种应用配置方法,用以支持应用在大规模配置、多套部署环境、多个版本的配置下进行配置,该方法包括:7.根据应用属于的服务分类、需部署的环境以及需部署的版本,从配置矩阵中确定配置应用的信息,其中,所述配置矩阵是通过应用属于的服务分类、需部署的环境以及需部署的版本,确定各个应用在对应的条件下的配置信息的;8.根据确定出的信息对应用进行配置。9.本发明实施例还提供一种应用配置装置,用以支持应用在大规模配置、多套部署环境、多个版本的配置下进行配置,该装置包括:10.信息模块,用于根据应用属于的服务分类、需部署的环境以及需部署的版本,从配置矩阵中确定配置应用的信息,其中,所述配置矩阵是通过应用属于的服务分类、需部署的环境以及需部署的版本,确定各个应用在对应的条件下的配置信息的;11.配置模块,用于根据确定出的信息对应用进行配置。12.本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述应用配置方法。13.本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述应用配置方法。14.本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现上述应用配置方法。15.本发明实施例提供的技术方案中,由于根据应用属于的服务分类、需部署的环境以及需部署的版本,直接从配置矩阵中确定该应用的配置信息,通过多维度的配置管理,让配置管理思路更加清晰明确,从而使得配置管理更加灵活可靠;由于通过生成配置矩阵,可以任意抽取任意维度的配置,从而可以缩短环境部署时间,提高效率。16.进一步的,由于采用了标准环境做全量版本,生成其他环境的全量配置,将标准环境作为媒介,以应用的特征、需求等作为增量,解决了增量版本与全量版本之间的关系,能够高效地满足针对各个应用的配置的复杂要求;17.进一步的,由于使用稀疏矩阵存储所述配置矩阵,因此会减少三维配置矩阵对于存储空间的占用;18.进一步的,由于通过配置校验规则库对所述配置矩阵中的配置信息进行校验,因此可以保证配置的可靠性。附图说明19.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:20.图1为本发明实施例中应用配置方法实施流程示意图;21.图2为本发明实施例中应用配置架构示意图;22.图3为本发明实施例中应用配置实施流程示意图;23.图4为本发明实施例中标准环境映射示意图;24.图5为本发明实施例中应用配置装置结构示意图。具体实施方式25.为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。26.发明人在发明过程中注意到:27.1、大规模配置场景下发布配置易出错。28.对于大型系统,例如大型的银行系统之类,服务的用户数量过亿的大型系统,采用分布式架构及微服务化后,配置文件规模以及单个文件的配置量很大,如采用人工手段生成配置,不仅是对时间的浪费,也是对人力资源的巨大浪费,同时也很难保证配置的正确性。29.2、多套部署环境、多版本交叉部署。30.由于开发测试阶段,涉及到的部署环境非常多,而且还多种复杂的并行场景。每个套别的环境都需要分别部署,而且需要部署的版本也各不相同,而且版本还有全量版本和增量版本的区分,导致情况复杂,工作量巨增。31.可见,随着分布式架构环境以及微服务化场景的不断推广,对于大型系统而言,如何进行正确高效的软件版本部署是非常值得关注的,这也对应用配置管理提出了极大的挑战。32.本发明实施例提供的技术方案将要解决的是,如何在大规模配置、多套部署环境、多个版本的配置进行正确高效的配置管理的技术问题。33.图1为应用配置方法实施流程示意图,如图所示,可以包括:34.步骤101、根据应用属于的服务分类、需部署的环境以及需部署的版本,从配置矩阵中确定配置应用的信息,其中,所述配置矩阵是通过应用属于的服务分类、需部署的环境以及需部署的版本,确定各个应用在对应的条件下的配置信息的;35.步骤102、根据确定出的信息对应用进行配置。36.实施中,按如下方式生成所述配置矩阵:37.确定一个标准环境;38.针对标准环境生成一个标准配置,并作为全量版本的所述配置矩阵进行维护;39.针对标准配置,根据各个应用属于的服务分类、需部署的环境以及需部署的版本,生成各个应用的配置,并作为各个应用的增量版本的所述配置矩阵下发给各个应用。40.具体的,标准的环境,也可以视为一个基本的环境,必备的环境,相同的环境;例如,就像一栋楼,刚开始每个房间都一样,但是随着每个用户不断地按照自身的需求进行使用后,每个房间也会发生变化,不再一样,刚开始的每个房间就可以视为一个标准的环境。应用也是如此,刚开始只是完成基本的、必要的功能,但随着服务的不同、部署环境的不同、版本的不同,配置的需求也会发生变化。41.本发明实施时,先构建出一个标准的环境,再去生成一个标准配置并维护,以后就根据每个应用的服务分类、需部署的环境以及需部署的版本,以标准版本为全量版本为每个应用形成增量版本。42.具体实施中,进一步包括:43.在应用版本变更时,针对所述标准配置,根据变更后的应用属于的服务分类、需部署的环境以及需部署的版本,生成变更后的应用的配置,并作为变更后的应用的增量版本的所述配置矩阵下发给应用。44.具体的,当应用版本更新时,一样以前述的标准版本为全量版本为每个新版本的应用形成增量版本。45.下面以实例进行说明。46.图2为应用配置架构示意图,如图所示,至少是一种可以实现应用配置的架构,需要说明的是,该架构更多的为了便于表述提供的架构,并不代表仅能有这一功能组合方式,该架构中,主要包含:配置生成模块、配置存储处理模块、配置校验模块。47.1、以标准环境法将配置转化为全量配置。48.在日常的版本发布流程中,既有增量版本,也有全量版本。本发明实施例提供的技术方案中,提出的是标准环境法,将标准环境作为媒介,通过将配置下发至标准环境,以标准环境为基准,来生成其他环境的全量配置。49.2、配置生成模块的三维矩阵法管理应用配置。50.本发明实施例提供的技术方案中,通过将时间(版本发布)、环境、服务这些关键变量抽取出来,提出三维配置矩阵管理方案,每个配置文件均是整个配置矩阵中的一个点,两个关键变量又可以形成一个面,这样就可以根据情况自由灵活抽取配置,从而实现配置灵活、可靠、高效的获取配置。51.3、配置存储处理模块。52.实施中,还可以进一步包括:53.使用稀疏矩阵存储所述配置矩阵。54.具体的,三维配置矩阵需要占用大量的空间,因此实施中可以将稀疏矩阵方法运用到配置存储中。这样会大大减少三维配置矩阵对于存储空间的占用。55.4、配置校验模块。56.实施中,还可以进一步包括:57.通过配置校验规则库对所述配置矩阵中的配置信息进行校验。58.具体的,可以通过维护配置校验规则库,经过配置校验模块的处理,来实现生成的配置的校验,从而可以保证配置的可靠性。59.规则库中的规则可以是根据经验配置的,也可以是根据应用内在的逻辑确定的,例如,在什么环境下,输入信息a,应当产生结果b,如果不是,那么说明该应用的配置是错误的;以银行业务为例,借贷、收支是平衡的,如果违反这个规则,那么说明这个应用配置是错误的。60.图3为应用配置实施流程示意图,如图所示,在配置矩阵生成、存储及可靠性校验流程中可以包括:61.增/全量版本配置序列输入;62.进行版本配置映射;63.标准环境/配置、服务/配置项输入、环境套别输入;64.配置矩阵生成模块执行;65.配置三维配置矩阵;66.配置校验规则库,配置校验模块执行;67.配置存储模块执行。68.下面对各模块的具体实施进行说明。69.方案主要是通过标准环境法将配置生成路径标准归一化,然后通过三维矩阵方法来管理应用配置,抽取应用配置管理流程关键流程,达到简化配置管理流程,为后续环境部署的正确性和便捷性打下了基础。70.1、三维矩阵配置管理方案。71.将应用配置矩阵化管理,矩阵的三个维度分别为服务分类、需部署环境以及时间(版本发布情况)。三维配置矩阵是逐步生成、更新的。只要确定了需部署服务、需部署环境、需部署版本,就可以唯一确认一份配置。同样,也可通过其他方式来得到三维矩阵的横切面,来获取到指定环境、指定版本的所有配置;或者指定版本,指定微服务的所有配置。后续配置的管理会更加灵活和便捷。72.2、通过持续维护标准环境实现配置全量转换。73.实施中,还可以进一步包括按如下方式生成所述配置矩阵:74.确定一个标准环境;75.针对标准环境生成一个标准配置,并作为全量版本的所述配置矩阵进行维护;76.针对标准配置,根据各个应用属于的服务分类、需部署的环境以及需部署的版本,生成各个应用的配置,并作为各个应用的增量版本的所述配置矩阵下发给各个应用。77.具体实施中,还可以进一步包括:78.在应用版本变更时,针对所述标准配置,根据变更后的应用属于的服务分类、需部署的环境以及需部署的版本,生成变更后的应用的配置,并作为变更后的应用的增量版本的所述配置矩阵下发给应用。79.具体的,将各版本应用配置持续维护至标准环境,然后依托标准环境生成标准配置。当前版本分为全量版本和增量版本,在一些关键特殊时点生成全量版本,其他均为增量版本。因为各个版本均维护至标准环境后,不管是全量版本还是增量版本,对于标准环境上的配置而言,全部都是全量版本,后续即可通过拉取标准环境的配置,即可针对性的生成其他套别环境的全量配置。80.3、配置生成模块生成三维配置矩阵。81.图4为标准环境映射示意图,如图所示,标准环境映射至完整应用配置矩阵可以由配置生成模块配合完成。标准环境中的配置是全量的,配置生成模块基于标准环境中的配置生成三维配置矩阵。配置生成模块将配置分为两部分,一部分为基础配置各个环境都是相同的,一部分为变化配置;配置生成模块将变化配置沉淀为“配置的配置”,利用“配置的配置”通过标准环境定期(定版本)生成三维配置矩阵,并且每次生成的配置文件都是基于时间(版本)序列的全量版本配置。82.4、配置存储处理模块压缩配置矩阵存储空间。83.配置存储处理模块中,每个配置文件中的配置项都很多,且最终三维配置矩阵需要保留较长时间的数据,会占用较多的存储空间。因此可以采用稀疏矩阵解决配置保存的问题。84.例如,可以采用三元组和十字链表。85.三元组是指形如((x,y),z)的集合(这就是说,三元组是这样的偶,其第一个射影亦是一个偶),常简记为(x,y,z)。86.三元组是计算机专业的一门公共基础课程——数据结构里的概念。主要是用来存储稀疏矩阵的一种压缩方式,也叫三元组表。假设以顺序存储结构来表示三元组表(tripletable),则得到稀疏矩阵的一种压缩存储方式,即三元组顺序表,简称三元组表。87.十字链表(orthogonallist)是有向图的另一种链式存储结构。该结构可以看成是将有向图的邻接表和逆邻接表结合起来得到的。用十字链表来存储有向图,可以达到高效的存取效果。同时,代码的可读性也会得到提升。88.5、配置校验模块完成配置可靠性验证。89.配置生成完成后,可以通过规则库对配置进行校验,保证配置的准确性和有效性。配置校验模块与配置存储模块适配,来完成配置的校验。校验规则模块可以采用版本维护的规则库来完成校验。90.本发明实施例中还提供了一种应用配置装置,如下面的实施例所述。由于该装置解决问题的原理与应用配置方法相似,因此该装置的实施可以参见应用配置方法的实施,重复之处不再赘述。91.图5为应用配置装置结构示意图,如图所示,可以包括:92.信息模块501,用于根据应用属于的服务分类、需部署的环境以及需部署的版本,从配置矩阵中确定配置应用的信息,其中,所述配置矩阵是通过应用属于的服务分类、需部署的环境以及需部署的版本,确定各个应用在对应的条件下的配置信息的;93.配置模块502,用于根据确定出的信息对应用进行配置。94.实施中,进一步包括:95.生成模块503,用于按如下方式生成所述配置矩阵:96.确定一个标准环境;97.针对标准环境生成一个标准配置,并作为全量版本的所述配置矩阵进行维护;98.针对标准配置,根据各个应用属于的服务分类、需部署的环境以及需部署的版本,生成各个应用的配置,并作为各个应用的增量版本的所述配置矩阵下发给各个应用。99.实施中,生成模块进一步用于在应用版本变更时,针对所述标准配置,根据变更后的应用属于的服务分类、需部署的环境以及需部署的版本,生成变更后的应用的配置,并作为变更后的应用的增量版本的所述配置矩阵下发给应用。100.实施中,进一步包括:101.存储模块504,用于使用稀疏矩阵存储所述配置矩阵。102.实施中,进一步包括:103.校验模块505,用于通过配置校验规则库对所述配置矩阵中的配置信息进行校验。104.本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述应用配置方法。105.本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述应用配置方法。106.本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现上述应用配置方法。107.本发明实施例中,提供了基于三维矩阵(多维矩阵)的配置管理方案;依托中间环境介质(标准环境法)生成标准配置的方案;三(多)维配置矩阵通过稀疏矩阵等压缩存储方法进行存储的方案;配置规则知识库来校验配置文件的方案。108.本发明实施例提供的技术方案中,由于根据应用属于的服务分类、需部署的环境以及需部署的版本,直接从配置矩阵中确定该应用的配置信息,通过多维度的配置管理,让配置管理思路更加清晰明确,从而使得配置管理更加灵活可靠;由于通过生成配置矩阵,可以任意抽取任意维度的配置,从而可以缩短环境部署时间,提高效率。109.进一步的,由于采用了标准环境做全量版本,生成其他环境的全量配置,将标准环境作为媒介,以应用的特征、需求等作为增量,解决了增量版本与全量版本之间的关系,能够高效地满足针对各个应用的配置的复杂要求;110.进一步的,由于使用稀疏矩阵存储所述配置矩阵,因此会减少三维配置矩阵对于存储空间的占用;111.进一步的,由于通过配置校验规则库对所述配置矩阵中的配置信息进行校验,因此可以保证配置的可靠性。112.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。113.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。114.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。115.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。116.以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1