CN113628022B - 一种多层配置的对账方法、装置及计算机可读存储介质 - Google Patents
一种多层配置的对账方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN113628022B CN113628022B CN202110908186.0A CN202110908186A CN113628022B CN 113628022 B CN113628022 B CN 113628022B CN 202110908186 A CN202110908186 A CN 202110908186A CN 113628022 B CN113628022 B CN 113628022B
- Authority
- CN
- China
- Prior art keywords
- configuration
- layer
- instance
- layer configuration
- framework
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000013507 mapping Methods 0.000 claims abstract description 65
- 238000004891 communication Methods 0.000 claims abstract description 15
- 238000000354 decomposition reaction Methods 0.000 claims description 15
- 238000010845 search algorithm Methods 0.000 claims description 9
- 239000010410 layer Substances 0.000 description 356
- 239000002356 single layer Substances 0.000 description 23
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/12—Accounting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/186—Templates
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- General Engineering & Computer Science (AREA)
- General Business, Economics & Management (AREA)
- Technology Law (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种多层配置的对账方法、装置及计算机可读存储介质,应用于网络通信邻域,其中,方法包括:获取服务器中的第一多层配置实例以及设备中的第二多层配置实例;分别对第一多层配置实例以及、第二多层配置实例进行分解,得到多个配置类型与对应的第一配置实例之间的第一映射关系以及多个配置类型与对应的第二配置实例之间的第二映射关系;针对每个配置类型,根据第一映射关系以及第二映射关系查找与该配置类型对应的第一配置实例以及第二配置实例,并将查找到的第一配置实例与第二配置实例进行对账,得到对账结果。因此,通过将多层配置实例进行分解,从而可以对每一层配置实例分别进行对账,从而实现对多层配置进行配置对账。
Description
技术领域
本申请涉及网络通信领域,具体而言,涉及一种多层配置的对账方法、装置及计算机可读存储介质。
背景技术
软件定义网络(Software Defined Network,SDN)系统采用应用定义网络的概念,动态的向不同设备下发各类型配置,以达到修改设备中流量路径的目的。在SDN系统根据业务向设备下发配置的过程中,SDN系统也会存储一份相应的配置,但是在某些场景中,例如:设备第一次被纳管、配置下发后设备还没有来得及写入即重启等场景,会造成设备和SDN系统的配置不一致,所以需要对设备中的配置以及SDN系统中的配置进行配置对账。其中,配置对账即根据配置示例的唯一标识,将相同类型的配置示例的各项参数进行对比。
在现有技术中,针对单层配置,可以直接使用对账框架实现配置对账,但是对于多层配置,由于每一层配置有自己的参数且每一层配置可能会有多个实例,因此无法直接使用对账框架进行配置对账,从而无法实现对多层配置进行配置对账。
发明内容
本申请实施例的目的在于提供一种多层配置的对账方法、装置及计算机可读存储介质,用以解决无法实现对多层配置进行配置对账的技术问题。
第一方面,本申请实施例提供一种多层配置的对账方法,包括:获取服务器中的第一多层配置实例以及设备中与所述第一多层配置实例对应的第二多层配置实例;其中,所述第一多层配置实例包括多个配置类型以及与每个配置类型对应的至少一个第一配置实例,所述第二多层配置实例包括所述多个配置类型以及与每个配置类型对应的至少一个第二配置实例;对所述第一多层配置实例进行分解,得到所述多个配置类型与对应的第一配置实例之间的第一映射关系,以及,对所述第二多层配置实例进行分解,得到所述多个配置类型与对应的第二配置实例之间的第二映射关系;针对每个配置类型,根据所述第一映射关系查找与该配置类型对应的第一配置实例,以及,根据所述第二映射关系查找与该配置类型对应的第二配置实例,并将查找到的第一配置实例与第二配置实例进行对账,得到对账结果。在上述方案中,将多层配置实例进行分解,得到多个单层配置实例,然后依次对单层配置实例进行配置对账,得到每一单层配置实例对应的对账结果。因此,通过将多层配置实例进行分解,从而可以对每一层配置实例分别进行对账,从而实现对多层配置进行配置对账。
在可选的实施方式中,在所述得到对账结果之后,所述方法还包括:在所述对账结果表征所述第一多层配置实例与所述第二多层配置实例存在不一致时,根据配置模板、所述对账结果以及所述至少一个第一配置实例拼接得到第三多层配置实例,以向所述设备下发所述第三多层配置实例;其中,所述配置模板包括多层配置框架中每个配置对应的子配置模板与所述配置的配置名称之间的第三映射关系,所述子配置模板包括所述配置在所述多层配置框架中的层级关系。在上述方案中,在得到对账结果之后,可以根据对账结果以及预先获取到的配置模板对配置实例进行拼接,最终得到需要向设备下发的多层配置实例,以使设备根据下发的多层配置实例对自身的配置实例进行更新。因此,通过配置模板拼接得到下发的多层配置实例,从而可以保证在对账之后可以设备可以对多层配置实例进行更新。
在可选的实施方式中,在所述根据配置模板、所述对账结果以及所述至少一个第一配置实例拼接得到第三多层配置实例之前,所述方法还包括:获取所述多层配置框架;从所述多层配置框架中第一层的配置开始,采用深度优先搜索算法搜索所述多层配置框架中的每个配置,确定所述配置的配置名称以及所述配置对应的子配置模板;建立每个配置的配置名称与子配置模板之间的所述第三映射关系,得到所述配置模板。在上述方案中,根据多层配置的组成结构进行分解,采用深度优先搜索算法确定每个配置对应的配置模板,从而使得在对每一层的配置实例进行配置对账完成之后,可以根据配置模板还原下发的多层配置实例。
在可选的实施方式中,所述配置在所述多层配置框架中的层级关系包括:所述配置的层级索引、所述配置的直系父配置的名称列表以及所述配置的直系子配置的名称列表。
在可选的实施方式中,所述对账结果包括所述第一多层配置实例与所述第二多层配置实例中存在不一致的待更新配置实例;所述根据配置模板、所述对账结果以及所述至少一个第一配置实例拼接得到第三多层配置实例,包括:根据所述层级索引查找与所述待更新配置实例对应的配置在所述多层配置框架中的层数;从所述与所述待更新配置实例对应的配置在所述多层配置框架中的层数开始,根据所述配置模板中所述第i层配置的直系父配置的名称列表,查找所述多层配置框架中的第i-1层配置,直至所述第i-1层配置为所述多层配置框架中的第一层配置,得到所述第一层配置至所述第i层配置之间的层级关系;其中,i≥2;根据所述层级索引、所述第一层配置至所述第i层配置之间的层级关系以及所述至少一个第一配置实例拼接得到所述第三多层配置实例。在上述方案中,根据配置模板中的层级索引对配置实例从下往上进行排序,然后按照顺序对配置实例进行拼接,得到下发的多层配置实例。
在可选的实施方式中,所述对账结果包括所述第一多层配置实例与所述第二多层配置实例中存在不一致的待更新配置实例;所述根据配置模板、所述对账结果以及所述至少一个第一配置实例拼接得到第三多层配置实例,包括:根据所述配置模板中的层级索引查找所述多层配置框架中的第一层配置,并确定与所述第一层配置对应的第一配置实例;从所述第一层配置开始,根据所述配置模板中所述第i层配置的直系子配置名称列表,查找所述多层配置框架中的第i+1层配置,并确定与所述第i+1层配置对应的第一配置实例,直至所述第i+1层配置对应的第一配置实例为所述待更新配置实例,得到所述第一层配置至所述第i+1层配置之间的层级关系;其中,i≥1;根据所述层级索引、所述第一层配置至所述第i+1层配置之间的层级关系以及所述至少一个第一配置实例拼接得到所述第三多层配置实例。在上述方案中,根据配置模板中的层级索引对配置实例从上往下进行排序,然后按照顺序对配置实例进行拼接,得到下发的多层配置实例。
在可选的实施方式中,所述对所述第一多层配置实例进行分解,得到所述多个配置类型与对应的第一配置实例之间的第一映射关系,包括:针对所述第一多层配置实例中的每个配置类型,确定所述配置类型的类型名称以及所述配置类型对应的配置实例列表;其中,所述配置实例列表包括与所述配置类型对应的至少一个第一配置实例;建立每个配置类型的类型名称与配置实例列表之间的所述第一映射关系。在上述方案中,可以根据配置类型将多层配置实例分解为多个单层配置实例,从而可以逐一对单层配置实例进行配置对账,实现对多层配置的配置对账。
第二方面,本申请实施例提供一种多层配置的对账装置,包括:第一获取模块,用于获取服务器中的第一多层配置实例以及设备中与所述第一多层配置实例对应的第二多层配置实例;其中,所述第一多层配置实例包括多个配置类型以及与每个配置类型对应的至少一个第一配置实例,所述第二多层配置实例包括所述多个配置类型以及与每个配置类型对应的至少一个第二配置实例;分解模块,用于对所述第一多层配置实例进行分解,得到所述多个配置类型与对应的第一配置实例之间的第一映射关系,以及,对所述第二多层配置实例进行分解,得到所述多个配置类型与对应的第二配置实例之间的第二映射关系;对账模块,用于针对每个配置类型,根据所述第一映射关系查找与该配置类型对应的第一配置实例,以及,根据所述第二映射关系查找与该配置类型对应的第二配置实例,并将查找到的第一配置实例与第二配置实例进行对账,得到对账结果。在上述方案中,将多层配置实例进行分解,得到多个单层配置实例,然后依次对单层配置实例进行配置对账,得到每一单层配置实例对应的对账结果。因此,通过将多层配置实例进行分解,从而可以对每一层配置实例分别进行对账,从而实现对多层配置进行配置对账。
在可选的实施方式中,所述多层配置的对账装置还包括:拼接模块,用于在所述对账结果表征所述第一多层配置实例与所述第二多层配置实例存在不一致时,根据配置模板、所述对账结果以及所述至少一个第一配置实例拼接得到第三多层配置实例,以向所述设备下发所述第三多层配置实例;其中,所述配置模板包括多层配置框架中每个配置对应的子配置模板与所述配置的配置名称之间的第三映射关系,所述子配置模板包括所述配置在所述多层配置框架中的层级关系。在上述方案中,在得到对账结果之后,可以根据对账结果以及预先获取到的配置模板对配置实例进行拼接,最终得到需要向设备下发的多层配置实例,以使设备根据下发的多层配置实例对自身的配置实例进行更新。因此,通过配置模板拼接得到下发的多层配置实例,从而可以保证在对账之后可以设备可以对多层配置实例进行更新。
在可选的实施方式中,所述多层配置的对账装置还包括:第二获取模块,用于获取所述多层配置框架;搜索模块,用于从所述多层配置框架中第一层的配置开始,采用深度优先搜索算法搜索所述多层配置框架中的每个配置,确定所述配置的配置名称以及所述配置对应的子配置模板;建立模块,用于建立每个配置的配置名称与子配置模板之间的所述第三映射关系,得到所述配置模板。在上述方案中,根据多层配置的组成结构进行分解,采用深度优先搜索算法确定每个配置对应的配置模板,从而使得在对每一层的配置实例进行配置对账完成之后,可以根据配置模板还原下发的多层配置实例。
在可选的实施方式中,所述配置在所述多层配置框架中的层级关系包括:所述配置的层级索引、所述配置的直系父配置的名称列表以及所述配置的直系子配置的名称列表。
在可选的实施方式中,所述对账结果包括所述第一多层配置实例与所述第二多层配置实例中存在不一致的待更新配置实例;所述拼接模块具体用于:根据所述层级索引查找与所述待更新配置实例对应的配置在所述多层配置框架中的层数;从所述与所述待更新配置实例对应的配置在所述多层配置框架中的层数开始,根据所述配置模板中所述第i层配置的直系父配置的名称列表,查找所述多层配置框架中的第i-1层配置,直至所述第i-1层配置为所述多层配置框架中的第一层配置,得到所述第一层配置至所述第i层配置之间的层级关系;其中,i≥2;根据所述层级索引、所述第一层配置至所述第i层配置之间的层级关系以及所述至少一个第一配置实例拼接得到所述第三多层配置实例。在上述方案中,根据配置模板中的层级索引对配置实例从下往上进行排序,然后按照顺序对配置实例进行拼接,得到下发的多层配置实例。
在可选的实施方式中,所述对账结果包括所述第一多层配置实例与所述第二多层配置实例中存在不一致的待更新配置实例;所述拼接模块具体用于:根据所述配置模板中的层级索引查找所述多层配置框架中的第一层配置,并确定与所述第一层配置对应的第一配置实例;从所述第一层配置开始,根据所述配置模板中所述第i层配置的直系子配置名称列表,查找所述多层配置框架中的第i+1层配置,并确定与所述第i+1层配置对应的第一配置实例,直至所述第i+1层配置对应的第一配置实例为所述待更新配置实例,得到所述第一层配置至所述第i+1层配置之间的层级关系;其中,i≥1;根据所述层级索引、所述第一层配置至所述第i+1层配置之间的层级关系以及所述至少一个第一配置实例拼接得到所述第三多层配置实例。在上述方案中,根据配置模板中的层级索引对配置实例从上往下进行排序,然后按照顺序对配置实例进行拼接,得到下发的多层配置实例。
在可选的实施方式中,所述分解模块具体用于:针对所述第一多层配置实例中的每个配置类型,确定所述配置类型的类型名称以及所述配置类型对应的配置实例列表;其中,所述配置实例列表包括与所述配置类型对应的至少一个第一配置实例;建立每个配置类型的类型名称与配置实例列表之间的所述第一映射关系。在上述方案中,可以根据配置类型将多层配置实例分解为多个单层配置实例,从而可以逐一对单层配置实例进行配置对账,实现对多层配置的配置对账。
第三方面,本申请实施例提供一种电子设备,包括:处理器、存储器和总线;所述处理器和所述存储器通过所述总线完成相互间的通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如前述实施方式任一项所述的多层配置的对账方法。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,所述计算机指令被计算机运行时,使所述计算机执行如前述实施方式任一项所述的多层配置的对账方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种多层配置的对账方法的流程图;
图2为本申请实施例提供的一种BGP配置实例的结构框图;
图3为本申请实施例提供的一种第三配置实例的结构框图;
图4为本申请实施例提供的一种多层配置的对账装置的结构框图;
图5为本申请实施例提供的一种电子设备的结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
本申请实施例提供一种多层配置的对账系统,该多层配置的对账系统包括服务器以及与服务器连接的至少一个设备。其中,根据网络的实施情况,服务器可以动态的向设备下发各类型的配置,从而可以修改设备中流量的路径。
服务器及设备中均存在配置实例,在不同的应用场景中,服务器及设备中的配置实例可以是单层配置实例,也可以是多层配置实例。其中,单层配置实例仅包括一种配置类型,该配置类型可以包括至少一个配置实例;多层配置实例包括多种配置类型,每种配置类型对应一层配置实例,且每种配置类型包括至少一个配置实例。
当在存在对账需求时,可以对服务器中配置实例以及设备中与服务器中的配置实例对应的配置实例进行对账,即将服务器中配置实例的各项参数与设备配置实例对应的各项参数进行对比。
其中,存在对账需求的场景可以有多种,本申请实施例对此不作具体的限定。作为一种实施方式,配置的对账需求可以是人为触发的,例如:当某设备第一次被服务器纳管时,管理人员可以人为的输入进行配置对账的命令;作为另一种实施方式,配置的对账需求可以是自动触发的,例如:当某设备离线并且重连后,可以自动触发配置对账。
基于上述多层配置的对账系统,本申请实施例提供一种多层配置的对账方法,该多层配置的对账方法应用于多层配置的对账系统中的服务器上,服务器可以对服务器上的多层配置实例以及设备上的多层配置实例进行配置对账。下面对上述多层配置的对账方法进行详细的介绍。
请参照图1,图1为本申请实施例提供的一种多层配置的对账方法的流程图,该多层配置的对账方法可以包括如下内容:
步骤S101:获取服务器中的第一多层配置实例以及设备中与第一多层配置实例对应的第二多层配置实例。
步骤S102:对第一多层配置实例进行分解,得到多个配置类型与对应的第一配置实例之间的第一映射关系,以及,对第二多层配置实例进行分解,得到多个配置类型与对应的第二配置实例之间的第二映射关系。
步骤S103:针对每个配置类型,根据第一映射关系查找与该配置类型对应的第一配置实例,以及,根据第二映射关系查找与该配置类型对应的第二配置实例,并将查找到的第一配置实例与第二配置实例进行对账,得到对账结果。
具体的,当存在对账需求时,服务器可以获取待对账设备中的一个第二多层配置实例以及与该设备中的多层配置实例对应的服务器中的一个第一多层配置实例。其中,服务器中的第一多层配置实例包括多个配置类型以及与每个配置类型对应的至少一个第一配置实例,而设备中的第二多层配置实例包括与服务器中相同的多个配置类型以及与每个配置类型对应的至少一个第二配置实例。
由于上述第一多层配置实例以及第二多层配置实例均为多层配置实例,两者之间无法直接进行配置对账,因此可以分别对第一多层配置实例以及第二多层配置实例进行分解。针对第一多层配置实施例,分解后可以得到多个配置类型与对应的第一配置实例之间的第一映射关系;针对第二多层配置实施例,分解后可以得到多个配置类型与对应的第二配置实例之间的第二映射关系。
其中,第一多层配置实例的分解过程与第二多层配置实例的分解过程相同,因此为了简洁,本申请实施例仅对第一多层配置实例的分解过程进行详细的介绍。第一多层配置实例的分解过程可以包括如下内容:
针对第一多层配置实例中的每个配置类型,确定配置类型的类型名称以及配置类型对应的配置实例列表。
建立每个配置类型的类型名称与配置实例列表之间的第一映射关系。
其中,由于第一多层配置实例包括多个配置类型以及与每个配置类型对应的至少一个第一配置实例,因此,针对其中的每一个配置类型,可以确定与该配置类型对应的所有第一配置实例,这些所有的第一配置实例可以形成一个配置实例列表。然后,将该配置类型的类型名称与上述配置实例列表关联起来,则可以建立起该配置类型的类型名称与上述配置实例列表之间的第一映射关系。也就是说,第一多层配置实例可以形成多个配置实例列表,每个配置实例列表与对应的配置类型的类型名称之间可以形成第一映射关系,这样,通过查找配置类型的类型名称,可以确定与该配置类型对应的多有第一配置实例。
以BGP配置实例为例,请参照图2,图2为本申请实施例提供的一种BGP配置实例的结构框图。可以看出,该BGP配置实例包括四层配置实例,每层配置实例对应一个配置类型,分别为:bgpInstance、bgpEntry、bgpNeighbor以及bgpAfiSafi,其中,bgpInstance包括一个配置实例、bgpEntry包括三个配置实例、bgpNeighbor包括一个配置实例、bgpAfiSafi包括一个配置实例。
对图2所示的BGP配置实例进行分解,可以得到如下四个第一映射关系:bgpInstance与对应的bgpInstance实例1,bgpEntry与对应的实例1、实例2以及实例3,bgpNeighbor与对应的实例1,bgpAfiSafi与对应的实例1。
因此,可以根据配置类型将多层配置实例分解为多个单层配置实例,从而可以逐一对单层配置实例进行配置对账,实现对多层配置的配置对账。
在基于上述实施例中的方案得到多个配置类型与对应的第一配置实例之间的第一映射关系以及多个配置类型与对应的第二配置实例之间的第二映射关系之后,可以基于上述第一映射关系以及第二映射关系将第一多层配置实例以及第二多层配置实例进行对账,并得到对应的对账结果。
其中,针对某个配置类型,可以根据第一映射关系查找到与该配置类型对应的所有的第一配置实例,同样的,可以根据第二映射关系查找到与该配置类型对应的所有的第二配置实例,然后可以将查找到的第一配置实例与第二配置实例进行对账。
作为一种实施方式,可以采用现有技术中的对账框架对一个配置类型对应的第一配置实例与第二配置实例进行对账。其中,一个配置类型中的每一个配置实例均包括一个唯一标识,因此,在利用对账框架进行对账时,可以将具备相同唯一标识的第一配置实例与第二配置实例进行对比,从而得到这两个第一配置实例以及第二配置实例是否一致的对账结果。
可以理解的是,本申请实施例提供的对账结果可以有多种实现形式,例如:对账结果可以包括基于每一个第一配置实例以及第二配置实例进行对账后,第一配置实例与第二配置实例是否一致的结果;或者,对账结果还可以包括不一致的第一配置实例以及第二配置实例对应的唯一标识。
其中,不一致表示:第一配置实例与第二配置实例的参数不同;存在第一配置实例但不存在第二配置实例;或者,存在第二配置实例但不存在第一配置实例。
因此,在上述方案中,将多层配置实例进行分解,得到多个单层配置实例,然后依次对单层配置实例进行配置对账,得到每一单层配置实例对应的对账结果。因此,通过将多层配置实例进行分解,从而可以对每一层配置实例分别进行对账,从而实现对多层配置进行配置对账。
进一步的,在采用上述实施例中的方案得到对账结果之后,本申请实施例提供的多层配置的对账方法还可以包括如下内容:
在对账结果表征第一多层配置实例与第二多层配置实例存在不一致时,根据配置模板、对账结果以及至少一个第一配置实例拼接得到第三多层配置实例,以向设备下发第三多层配置实例。
具体的,当发现第一多层配置实例与第二多层配置实例存在不一致时,服务器可以向设备下发第三配置实例,以对设备中的第二配置实例进行更新。其中,可以根据预先获取的配置模板、上述实施例中得到的对账结果以及至少一个第一配置实例拼接得到第三多层配置实例。
下面对生成上述实施例中的配置模板的具体实施方式进行详细的介绍。在上述拼接得到第三多层配置实例的步骤之前,本申请实施例提供的多层配置的对账方法还可以包括以下内容:
获取多层配置框架。
从多层配置框架中第一层的配置开始,采用深度优先搜索算法搜索多层配置框架中的每个配置,确定配置的配置名称以及配置对应的子配置模板。
建立每个配置的配置名称与子配置模板之间的第三映射关系,得到配置模板。
具体的,首先可以获取服务器中的多层配置框架,该框架可以理解为没有具体配置参数的多层配置实例。然后,可以采用深度优先搜索算法对上述多层配置框架进行遍历,每找到一个配置,则可以确定该配置对应的配置名称以及子配置模板。
作为一种实施方式,子配置模板可以包括配置在多层配置框架中的层级关系,而配置在多层配置框架中的层级关系可以进一步包括配置的层级索引、配置的直系父配置的名称列表以及配置的直系子配置的名称列表。
其中,配置的层级索引表示该配置在多层配置框架中的第几层,例如:第一层配置的层级索引可以为1,第二层配置的层级索引可以为2;配置的直系父配置的名称列表包括该配置所有的直系父配置的名称,而该配置的直系父配置为该配置上一层的配置;类似的,配置的直系子配置的名称列表包括该配置所有的直系子配置的名称,而该配置的直系子配置为该配置上下一层的配置。
也就是说,通过配置的层级索引、配置的直系父配置的名称列表以及配置的直系子配置的名称列表,可以表示出一个配置在多层子配置框架中的位置。
深度优先搜索算法是一种对每一个可能的分支路径深入到不能再深入为止的遍历方法。图2所示的BGP配置实例为例,遍历的顺序为:bgpInstance1、bgpEntry1、bgpNeighbor1、bgpAfiSafi1、bgpEntry1、bgpEntry3。
在搜索的过程中,每搜索到一个配置,则可以确定该配置对应的配置名称以及子配置模板。在搜索完所有的配置之后,可以建立每个配置的配置名称与子配置模板之间的第三映射关系,从而得到配置模板。
同样以图2所示的BGP配置实例为例,生成的配置模板如下:
[
{“configName”:”bgpInstance”,”levelIndex”:0,parentConfigs:[],subConfigs:[“bgpEntry”]},
{“configName”:”bgpEntry”,”levelIndex”:1,parentConfigs:[“bgpInstance”],subConfigs:[“bgpNeighbor”,“bgpAfiSafi”]},
{“configName”:”bgpNeighbor”,”levelIndex”:2,parentConfigs:[“bgpEntry”],subConfigs:[]},
{“configName”:”bgpAfiSafi”,”levelIndex”:3,parentConfigs:[“bgpEntry”],subConfigs:[]}]。
因此,根据多层配置的组成结构进行分解,采用深度优先搜索算法确定每个配置对应的配置模板,从而使得在对每一层的配置实例进行配置对账完成之后,可以根据配置模板还原下发的多层配置实例。
接下来对拼接得到第三多层配置实例的具体实施方式进行详细的介绍。
作为一种实施方式,对账结果可以包括第一多层配置实例与第二多层配置实例中存在不一致的待更新配置实例,此时,上述拼接得到第三多层配置实例的过程可以包括如下内容:
根据层级索引查找与待更新配置实例对应的配置在多层配置框架中的层数。
从与待更新配置实例对应的配置在多层配置框架中的层数开始,根据配置模板中第i层配置的直系父配置的名称列表,查找多层配置框架中的第i-1层配置,直至第i-1层配置为多层配置框架中的第一层配置,得到第一层配置至第i层配置之间的层级关系。
根据层级索引、第一层配置至第i层配置之间的层级关系以及至少一个第一配置实例拼接得到第三多层配置实例。
具体的,可以从多层配置框架中待更新配置实例对应的层数开始,基于配置模板,由下往上的查找每一个配置在多层配置框架中的位置以及与其他配置之间的层级关系。在查找到所有需要查找的配置的层级关系之后,可以基于该层级关系将上述配置拼接起来,从而还原得到一个第三多层配置实例。
可以理解的是,由于在向设备下发第三多层配置实例时,可以存在修改配置实例、新增配置实例或者删除配置实例的情况,因此,拼接得到的第三多层配置实例与第一层配置实例并不相同。第一层配置实例为一个完整的配置实例,而第三层配置实例为第一层配置实例的一部分。
以图2所示的BGP配置实例为例,假设需要修改或者新增bgpEntry1,则拼接得到的第三层配置实例如图3所示,当服务器向设备下发如图3所示的第三层配置实例后,设备可以新增bgpEntry1或者对原有的bgpEntry1进行更新。类似的,假设需要删除bgpEntry1,则拼接得到的第三层配置实例同样如图3所示,当服务器向设备下发如图3所示的第三层配置实例后,设备可以删除bgpEntry1。
在上述方案中,根据配置模板中的层级索引对配置实例从下往上进行排序,然后按照顺序对配置实例进行拼接,得到下发的多层配置实例。
作为另一种实施方式,对账结果同样可以包括第一多层配置实例与第二多层配置实例中存在不一致的待更新配置实例,此时,上述拼接得到第三多层配置实例的过程可以包括如下内容:
根据配置模板中的层级索引查找多层配置框架中的第一层配置,并确定与第一层配置对应的第一配置实例。
从第一层配置开始,根据配置模板中第i层配置的直系子配置名称列表,查找多层配置框架中的第i+1层配置,并确定与第i+1层配置对应的第一配置实例,直至第i+1层配置对应的第一配置实例为待更新配置实例,得到第一层配置至第i+1层配置之间的层级关系。
根据层级索引、第一层配置至第i+1层配置之间的层级关系以及至少一个第一配置实例拼接得到第三多层配置实例。
可以理解的是,该实施方式与上一实施方式的实现原理相同,区别仅在于该实施方式是由上往下进行配置的查找的,因此,本申请实施例对此不再赘述。
在上述方案中,根据配置模板中的层级索引对配置实例从上往下进行排序,然后按照顺序对配置实例进行拼接,得到下发的多层配置实例。
请参照图4,图4为本申请实施例提供的一种多层配置的对账装置的结构框图,该多层配置的对账装置400可以包括:第一获取模块401,用于获取服务器中的第一多层配置实例以及设备中与所述第一多层配置实例对应的第二多层配置实例;其中,所述第一多层配置实例包括多个配置类型以及与每个配置类型对应的至少一个第一配置实例,所述第二多层配置实例包括所述多个配置类型以及与每个配置类型对应的至少一个第二配置实例;分解模块402,用于对所述第一多层配置实例进行分解,得到所述多个配置类型与对应的第一配置实例之间的第一映射关系,以及,对所述第二多层配置实例进行分解,得到所述多个配置类型与对应的第二配置实例之间的第二映射关系;对账模块403,用于针对每个配置类型,根据所述第一映射关系查找与该配置类型对应的第一配置实例,以及,根据所述第二映射关系查找与该配置类型对应的第二配置实例,并将查找到的第一配置实例与第二配置实例进行对账,得到对账结果。
在本申请实施例中,将多层配置实例进行分解,得到多个单层配置实例,然后依次对单层配置实例进行配置对账,得到每一单层配置实例对应的对账结果。因此,通过将多层配置实例进行分解,从而可以对每一层配置实例分别进行对账,从而实现对多层配置进行配置对账。
进一步的,所述多层配置的对账装置400还包括:拼接模块,用于在所述对账结果表征所述第一多层配置实例与所述第二多层配置实例存在不一致时,根据配置模板、所述对账结果以及所述至少一个第一配置实例拼接得到第三多层配置实例,以向所述设备下发所述第三多层配置实例;其中,所述配置模板包括多层配置框架中每个配置对应的子配置模板与所述配置的配置名称之间的第三映射关系,所述子配置模板包括所述配置在所述多层配置框架中的层级关系。
在本申请实施例中,在得到对账结果之后,可以根据对账结果以及预先获取到的配置模板对配置实例进行拼接,最终得到需要向设备下发的多层配置实例,以使设备根据下发的多层配置实例对自身的配置实例进行更新。因此,通过配置模板拼接得到下发的多层配置实例,从而可以保证在对账之后可以设备可以对多层配置实例进行更新。
进一步的,所述多层配置的对账装置400还包括:第二获取模块,用于获取所述多层配置框架;搜索模块,用于从所述多层配置框架中第一层的配置开始,采用深度优先搜索算法搜索所述多层配置框架中的每个配置,确定所述配置的配置名称以及所述配置对应的子配置模板;建立模块,用于建立每个配置的配置名称与子配置模板之间的所述第三映射关系,得到所述配置模板。
在本申请实施例中,根据多层配置的组成结构进行分解,采用深度优先搜索算法确定每个配置对应的配置模板,从而使得在对每一层的配置实例进行配置对账完成之后,可以根据配置模板还原下发的多层配置实例。
进一步的,所述配置在所述多层配置框架中的层级关系包括:所述配置的层级索引、所述配置的直系父配置的名称列表以及所述配置的直系子配置的名称列表。
进一步的,所述对账结果包括所述第一多层配置实例与所述第二多层配置实例中存在不一致的待更新配置实例;所述拼接模块404具体用于:根据所述层级索引查找与所述待更新配置实例对应的配置在所述多层配置框架中的层数;从所述与所述待更新配置实例对应的配置在所述多层配置框架中的层数开始,根据所述配置模板中所述第i层配置的直系父配置的名称列表,查找所述多层配置框架中的第i-1层配置,直至所述第i-1层配置为所述多层配置框架中的第一层配置,得到所述第一层配置至所述第i层配置之间的层级关系;其中,i≥2;根据所述层级索引、所述第一层配置至所述第i层配置之间的层级关系以及所述至少一个第一配置实例拼接得到所述第三多层配置实例。
在本申请实施例中,根据配置模板中的层级索引对配置实例从下往上进行排序,然后按照顺序对配置实例进行拼接,得到下发的多层配置实例。
进一步的,所述对账结果包括所述第一多层配置实例与所述第二多层配置实例中存在不一致的待更新配置实例;所述拼接模块404具体用于:根据所述配置模板中的层级索引查找所述多层配置框架中的第一层配置,并确定与所述第一层配置对应的第一配置实例;从所述第一层配置开始,根据所述配置模板中所述第i层配置的直系子配置名称列表,查找所述多层配置框架中的第i+1层配置,并确定与所述第i+1层配置对应的第一配置实例,直至所述第i+1层配置对应的第一配置实例为所述待更新配置实例,得到所述第一层配置至所述第i+1层配置之间的层级关系;其中,i≥1;根据所述层级索引、所述第一层配置至所述第i+1层配置之间的层级关系以及所述至少一个第一配置实例拼接得到所述第三多层配置实例。
在本申请实施例中,根据配置模板中的层级索引对配置实例从上往下进行排序,然后按照顺序对配置实例进行拼接,得到下发的多层配置实例。
进一步的,所述分解模块402具体用于:针对所述第一多层配置实例中的每个配置类型,确定所述配置类型的类型名称以及所述配置类型对应的配置实例列表;其中,所述配置实例列表包括与所述配置类型对应的至少一个第一配置实例;建立每个配置类型的类型名称与配置实例列表之间的所述第一映射关系。
在本申请实施例中,可以根据配置类型将多层配置实例分解为多个单层配置实例,从而可以逐一对单层配置实例进行配置对账,实现对多层配置的配置对账。
请参照图5,图5为本申请实施例提供的一种电子设备的结构框图,该电子设备500包括:至少一个处理器501,至少一个通信接口502,至少一个存储器503和至少一个通信总线504。其中,通信总线504用于实现这些组件直接的连接通信,通信接口502用于与其他节点设备进行信令或数据的通信,存储器503存储有处理器501可执行的机器可读指令。当电子设备500运行时,处理器501与存储器503之间通过通信总线504通信,机器可读指令被处理器501调用时执行上述多层配置的对账方法。
例如,本申请实施例的处理器501通过通信总线504从存储器503读取计算机程序并执行该计算机程序可以实现如下方法:步骤S101:获取服务器中的第一多层配置实例以及设备中与第一多层配置实例对应的第二多层配置实例。步骤S102:对第一多层配置实例进行分解,得到多个配置类型与对应的第一配置实例之间的第一映射关系,以及,对第二多层配置实例进行分解,得到多个配置类型与对应的第二配置实例之间的第二映射关系。步骤S103:针对每个配置类型,根据第一映射关系查找与该配置类型对应的第一配置实例,以及,根据第二映射关系查找与该配置类型对应的第二配置实例,并将查找到的第一配置实例与第二配置实例进行对账,得到对账结果。
处理器501可以是一种集成电路芯片,具有信号处理能力。上述处理器501可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。其可以实现或者执行本申请实施例中公开的各种方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器503可以包括但不限于随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。
可以理解,图5所示的结构仅为示意,电子设备500还可包括比图5中所示更多或者更少的组件,或者具有与图5所示不同的配置。图5中所示的各组件可以采用硬件、软件或其组合实现。于本申请实施例中,电子设备500可以是,但不限于台式机、笔记本电脑、智能手机、智能穿戴设备、车载设备等实体设备,还可以是虚拟机等虚拟设备。另外,电子设备500也不一定是单台设备,还可以是多台设备的组合,例如服务器集群,等等。于本申请实施例中,多层配置的对账方法中的设备及服务器均可以采用图5示出的电子设备500实现。
本申请实施例还提供一种计算机程序产品,包括存储在计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被计算机执行时,计算机能够执行上述实施例中多层配置的对账方法的步骤,例如包括:获取服务器中的第一多层配置实例以及设备中与所述第一多层配置实例对应的第二多层配置实例;其中,所述第一多层配置实例包括多个配置类型以及与每个配置类型对应的至少一个第一配置实例,所述第二多层配置实例包括所述多个配置类型以及与每个配置类型对应的至少一个第二配置实例;对所述第一多层配置实例进行分解,得到所述多个配置类型与对应的第一配置实例之间的第一映射关系,以及,对所述第二多层配置实例进行分解,得到所述多个配置类型与对应的第二配置实例之间的第二映射关系;针对每个配置类型,根据所述第一映射关系查找与该配置类型对应的第一配置实例,以及,根据所述第二映射关系查找与该配置类型对应的第二配置实例,并将查找到的第一配置实例与第二配置实例进行对账,得到对账结果。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
需要说明的是,功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (6)
1.一种多层配置的对账方法,其特征在于,包括:
获取服务器中的第一多层配置实例以及设备中与所述第一多层配置实例对应的第二多层配置实例;其中,所述第一多层配置实例包括多个配置类型以及与每个配置类型对应的至少一个第一配置实例,所述第二多层配置实例包括所述多个配置类型以及与每个配置类型对应的至少一个第二配置实例;
对所述第一多层配置实例进行分解,得到所述多个配置类型与对应的第一配置实例之间的第一映射关系,以及,对所述第二多层配置实例进行分解,得到所述多个配置类型与对应的第二配置实例之间的第二映射关系;
针对每个配置类型,根据所述第一映射关系查找与该配置类型对应的第一配置实例,以及,根据所述第二映射关系查找与该配置类型对应的第二配置实例,并将查找到的第一配置实例与第二配置实例进行对账,得到对账结果;
在所述得到对账结果之后,所述方法还包括:
在所述对账结果表征所述第一多层配置实例与所述第二多层配置实例存在不一致时,根据配置模板、所述对账结果以及所述至少一个第一配置实例拼接得到第三多层配置实例,以向所述设备下发所述第三多层配置实例;其中,所述配置模板包括多层配置框架中每个配置对应的子配置模板与所述配置的配置名称之间的第三映射关系,所述子配置模板包括所述配置在所述多层配置框架中的层级关系;
所述配置在所述多层配置框架中的层级关系包括:所述配置的层级索引、所述配置的直系父配置的名称列表以及所述配置的直系子配置的名称列表;
所述对账结果包括所述第一多层配置实例与所述第二多层配置实例中存在不一致的待更新配置实例;
所述根据配置模板、所述对账结果以及所述至少一个第一配置实例拼接得到第三多层配置实例,包括:
根据所述层级索引查找与所述待更新配置实例对应的配置在所述多层配置框架中的层数;
从所述与所述待更新配置实例对应的配置在所述多层配置框架中的层数开始,根据所述配置模板中所述第i层配置的直系父配置的名称列表,查找所述多层配置框架中的第i-1层配置,直至所述第i-1层配置为所述多层配置框架中的第一层配置,得到所述第一层配置至所述第i层配置之间的层级关系;其中,i≥2;
根据所述层级索引、所述第一层配置至所述第i层配置之间的层级关系以及所述至少一个第一配置实例拼接得到所述第三多层配置实例;
或者,
所述对账结果包括所述第一多层配置实例与所述第二多层配置实例中存在不一致的待更新配置实例;
所述根据配置模板、所述对账结果以及所述至少一个第一配置实例拼接得到第三多层配置实例,包括:
根据所述配置模板中的层级索引查找所述多层配置框架中的第一层配置,并确定与所述第一层配置对应的第一配置实例;
从所述第一层配置开始,根据所述配置模板中所述第i层配置的直系子配置名称列表,查找所述多层配置框架中的第i+1层配置,并确定与所述第i+1层配置对应的第一配置实例,直至所述第i+1层配置对应的第一配置实例为所述待更新配置实例,得到所述第一层配置至所述第i+1层配置之间的层级关系;其中,i≥1;
根据所述层级索引、所述第一层配置至所述第i+1层配置之间的层级关系以及所述至少一个第一配置实例拼接得到所述第三多层配置实例。
2.根据权利要求1所述的多层配置的对账方法,其特征在于,在所述根据配置模板、所述对账结果以及所述至少一个第一配置实例拼接得到第三多层配置实例之前,所述方法还包括:
获取所述多层配置框架;
从所述多层配置框架中第一层的配置开始,采用深度优先搜索算法搜索所述多层配置框架中的每个配置,确定所述配置的配置名称以及所述配置对应的子配置模板;
建立每个配置的配置名称与子配置模板之间的所述第三映射关系,得到所述配置模板。
3.根据权利要求1或2所述的多层配置的对账方法,其特征在于,所述对所述第一多层配置实例进行分解,得到所述多个配置类型与对应的第一配置实例之间的第一映射关系,包括:
针对所述第一多层配置实例中的每个配置类型,确定所述配置类型的类型名称以及所述配置类型对应的配置实例列表;其中,所述配置实例列表包括与所述配置类型对应的至少一个第一配置实例;
建立每个配置类型的类型名称与配置实例列表之间的所述第一映射关系。
4.一种多层配置的对账装置,其特征在于,包括:
第一获取模块,用于获取服务器中的第一多层配置实例以及设备中与所述第一多层配置实例对应的第二多层配置实例;其中,所述第一多层配置实例包括多个配置类型以及与每个配置类型对应的至少一个第一配置实例,所述第二多层配置实例包括所述多个配置类型以及与每个配置类型对应的至少一个第二配置实例;
分解模块,用于对所述第一多层配置实例进行分解,得到所述多个配置类型与对应的第一配置实例之间的第一映射关系,以及,对所述第二多层配置实例进行分解,得到所述多个配置类型与对应的第二配置实例之间的第二映射关系;
对账模块,用于针对每个配置类型,根据所述第一映射关系查找与该配置类型对应的第一配置实例,以及,根据所述第二映射关系查找与该配置类型对应的第二配置实例,并将查找到的第一配置实例与第二配置实例进行对账,得到对账结果;
拼接模块,用于在所述对账结果表征所述第一多层配置实例与所述第二多层配置实例存在不一致时,根据配置模板、所述对账结果以及所述至少一个第一配置实例拼接得到第三多层配置实例,以向所述设备下发所述第三多层配置实例;其中,所述配置模板包括多层配置框架中每个配置对应的子配置模板与所述配置的配置名称之间的第三映射关系,所述子配置模板包括所述配置在所述多层配置框架中的层级关系;
所述配置在所述多层配置框架中的层级关系包括:所述配置的层级索引、所述配置的直系父配置的名称列表以及所述配置的直系子配置的名称列表;
所述对账结果包括所述第一多层配置实例与所述第二多层配置实例中存在不一致的待更新配置实例;
所述拼接模块具体用于:
根据所述层级索引查找与所述待更新配置实例对应的配置在所述多层配置框架中的层数;
从所述与所述待更新配置实例对应的配置在所述多层配置框架中的层数开始,根据所述配置模板中所述第i层配置的直系父配置的名称列表,查找所述多层配置框架中的第i-1层配置,直至所述第i-1层配置为所述多层配置框架中的第一层配置,得到所述第一层配置至所述第i层配置之间的层级关系;其中,i≥2;
根据所述层级索引、所述第一层配置至所述第i层配置之间的层级关系以及所述至少一个第一配置实例拼接得到所述第三多层配置实例;
或者,
所述对账结果包括所述第一多层配置实例与所述第二多层配置实例中存在不一致的待更新配置实例;
所述拼接模块具体用于:
根据所述配置模板中的层级索引查找所述多层配置框架中的第一层配置,并确定与所述第一层配置对应的第一配置实例;
从所述第一层配置开始,根据所述配置模板中所述第i层配置的直系子配置名称列表,查找所述多层配置框架中的第i+1层配置,并确定与所述第i+1层配置对应的第一配置实例,直至所述第i+1层配置对应的第一配置实例为所述待更新配置实例,得到所述第一层配置至所述第i+1层配置之间的层级关系;其中,i≥1;
根据所述层级索引、所述第一层配置至所述第i+1层配置之间的层级关系以及所述至少一个第一配置实例拼接得到所述第三多层配置实例。
5.一种电子设备,其特征在于,包括:处理器、存储器和总线;
所述处理器和所述存储器通过所述总线完成相互间的通信;
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如权利要求1-3任一项所述的多层配置的对账方法。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储计算机指令,所述计算机指令被计算机运行时,使所述计算机执行如权利要求1-3任一项所述的多层配置的对账方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110908186.0A CN113628022B (zh) | 2021-08-09 | 2021-08-09 | 一种多层配置的对账方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110908186.0A CN113628022B (zh) | 2021-08-09 | 2021-08-09 | 一种多层配置的对账方法、装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113628022A CN113628022A (zh) | 2021-11-09 |
CN113628022B true CN113628022B (zh) | 2023-12-22 |
Family
ID=78383615
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110908186.0A Active CN113628022B (zh) | 2021-08-09 | 2021-08-09 | 一种多层配置的对账方法、装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113628022B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7337184B1 (en) * | 2002-07-17 | 2008-02-26 | International Business Machines Corporation | Topology mapping of a multitier compute infrastructure |
EP2393020A1 (en) * | 2010-05-31 | 2011-12-07 | Tieto Oyj | Optimal fetching of data in a data access tier of a multi-tier application |
CN109714430A (zh) * | 2019-01-16 | 2019-05-03 | 深圳壹账通智能科技有限公司 | 分布式缓存方法、装置、计算机系统及存储介质 |
JP2020503617A (ja) * | 2016-12-28 | 2020-01-30 | イングラム マイクロ インコーポレーテッド | クラウドサービスブローカー業務における多層課金システム及び方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10255164B2 (en) * | 2016-03-31 | 2019-04-09 | Ca, Inc. | Transaction stitching definitions |
US20200162517A1 (en) * | 2018-11-21 | 2020-05-21 | Cisco Technology, Inc. | Method and apparatus to have entitlement follow the end device in network |
US11449356B2 (en) * | 2019-01-18 | 2022-09-20 | GalaxE.Solutions, Inc. | Systems and methods for transaction tracing within an IT environment |
US11481487B2 (en) * | 2019-07-08 | 2022-10-25 | Google Llc | System and method of detecting file system modifications via multi-layer file system state |
US11347702B2 (en) * | 2019-12-19 | 2022-05-31 | Hewlett Packard Enterprise Development Lp | Migration of data in a system having multi-tiered physical storage |
US11178040B2 (en) * | 2020-01-15 | 2021-11-16 | Vmware, Inc. | Intent-based network virtualization design |
-
2021
- 2021-08-09 CN CN202110908186.0A patent/CN113628022B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7337184B1 (en) * | 2002-07-17 | 2008-02-26 | International Business Machines Corporation | Topology mapping of a multitier compute infrastructure |
EP2393020A1 (en) * | 2010-05-31 | 2011-12-07 | Tieto Oyj | Optimal fetching of data in a data access tier of a multi-tier application |
JP2020503617A (ja) * | 2016-12-28 | 2020-01-30 | イングラム マイクロ インコーポレーテッド | クラウドサービスブローカー業務における多層課金システム及び方法 |
CN109714430A (zh) * | 2019-01-16 | 2019-05-03 | 深圳壹账通智能科技有限公司 | 分布式缓存方法、装置、计算机系统及存储介质 |
Non-Patent Citations (2)
Title |
---|
基于SDN的内容就近分发网络路由方案研究;季晔莉;中国优秀硕士学位论文全文数据库信息科技辑;I136-386 * |
大服务设计与运行平台门户系统的设计与实现;刘钰霄;中国优秀硕士学位论文全文数据库信息科技辑;I138-440 * |
Also Published As
Publication number | Publication date |
---|---|
CN113628022A (zh) | 2021-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10621211B2 (en) | Language tag management on international data storage | |
US8880549B2 (en) | Concurrent database access by production and prototype applications | |
CN110008665B (zh) | 一种区块链的权限控制方法及装置 | |
CN110162429B (zh) | 系统修复方法、服务器及存储介质 | |
CN110032568B (zh) | 数据结构的读取及更新方法、装置、电子设备 | |
CN113326264A (zh) | 数据处理方法、服务器及存储介质 | |
CN111984264A (zh) | 一种静态库的生成方法和装置 | |
CN113628022B (zh) | 一种多层配置的对账方法、装置及计算机可读存储介质 | |
CN112363997A (zh) | 数据版本管理方法、装置及存储介质 | |
CN109840078B (zh) | 一种协作编辑分层元数据的方法及装置 | |
CN111078773A (zh) | 一种数据处理方法及装置 | |
CN112099879B (zh) | 配置信息管理方法、装置、计算机设备及存储介质 | |
CN113179332B (zh) | 用于获取配置信息的方法、电子设备和存储介质 | |
CN115617781A (zh) | 数字对象创建、数据管理方法及装置 | |
CN113448493B (zh) | 用于备份数据的方法、电子设备和计算机可读介质 | |
CN113419752A (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN110830278A (zh) | 一种设备配置更新方法、更新装置及计算机可读存储介质 | |
US20230195901A1 (en) | Model-based upgrade recommendations using software dependencies | |
CN116628080A (zh) | 数据同步方法、装置、电子设备和存储介质 | |
CN116226034A (zh) | 一种kubeconfig文件管理工具实现方法和装置 | |
CN116149650A (zh) | 数据集成策略的配置方法、数据集成方法、装置、设备及存储介质 | |
CN112507667A (zh) | 基于区块链的族谱合并方法、设备及存储介质 | |
CN116088891A (zh) | 一种业务状态更新方法及装置 | |
CN114090841A (zh) | 一种镜像溯源方法、装置、设备及介质 | |
CN115455328A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |