一种配置文件的更新方法、装置、设备及存储介质与流程

文档序号:32841836发布日期:2023-01-06 21:06阅读:26来源:国知局
一种配置文件的更新方法、装置、设备及存储介质与流程

1.本技术涉及分布式系统技术领域,尤其涉及一种配置文件的更新方法、装置、设备及存储介质。


背景技术:

2.目前,各类应用的版本更新换代比较频繁,每一次应用版本的更新都需要技术人员手动修改应用服务器的配置文件,并在修改之后重启应用服务器以使应用服务器运行新版本的配置文件。这种更新方式效率比较低,人工成本较大。尤其针对采用分布式系统提供服务的应用,在应用版本发生更新时,需要技术人员对提供应用服务的每一台应用服务器进行配置文件的更新维护以及重启,工作量比较大,耗时较长。


技术实现要素:

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.图1为本技术实施例提供的一种系统架构示意图;
43.图2为本技术实施例提供的一种应用场景架构示意图;
44.图3为本技术实施例提供的一种配置文件的更新方法流程图;
45.图4为本技术实施例提供的另一种配置文件的更新方法流程图;
46.图5为本技术实施例提供的一种配置文件的更新装置的结构示意图;
47.图6为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
48.为使本技术的目的、技术方案和优点更加清楚明白,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互任意组合。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以按不同于此处的顺序执行所示出或描述的步骤。
49.本技术的说明书和权利要求书及上述附图中的术语“第一”和“第二”是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的保护。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本技术中的“多个”可以表示至少两个,例如可以是两个、三个或者更多个,本技术实施例不做限制。
50.本技术技术方案中,对数据的采集、传播、使用等,均符合国家相关法律法规要求。
51.为了便于理解本技术提出的方案以及本技术实施例所解决的技术问题和所能达到的技术效果,首先对本技术涉及的系统架构进行介绍。参见图1,为本技术实施例提出的一种系统架构示意图。图1所示的系统架构中包括分布式系统包括的多个应用服务器和应用客户端。
52.其中,应用客户端可以为用户所使用的终端设备,也可以称为移动台(mobile station,ms)、移动终端(mobile terminal,mt)等,是一种向用户提供语音和/或数据连通性的设备,例如,具有无线连接功能的手持式设备、车载设备等。目前,一些用户设备的举例为:手机(mobile phone)、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internet device,mid)、可穿戴设备,虚拟现实(virtual reality,vr)设备、增强现实(augmented reality,ar)设备、工业控制(industrial control)中的无线终端、无人驾驶
(self driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等。
53.可选地,分布式系统中包括的各个应用服务器用于收发和处理各类上下行数据,为应用客户端提供相应的服务。需要说明的是,图1仅作为一种示例,本技术对于系统中包括的应用客户端和应用服务器的数量不作限定。
54.目前,针对分布式系统的应用,当应用版本更新时,需要技术人员手动更新分布式系统中每一台应用服务器的配置文件,并逐个重启应用服务器以使各应用服务器运行新的配置文件。这种更新方式浪费人工成本且效率不高。
55.为了解决上述问题,本技术实施例提供了一种配置文件的更新方法、装置、设备及存储介质。本技术提出在分布式系统之外,单独部署一个配置服务端,该配置服务端在检测到分布式系统的配置文件有更新时,提取出更新后的配置文件中包括的参数,并通过消息队列的方式发布提取出的参数,然后向分布式系统包括的各个应用服务器发更新通知。各个应用服务器接收到通知之后可以从消息队列中下载更新后的参数,并运行更新后的参数。本技术提出的方案不需要人工更新配置文件,也不需要逐个重启应用服务器,实现了自动高效更新配置文件。
56.为了便于理解本技术的方案,首先对本技术的方案应用的场景进行介绍。参见图2,为本技术实施例提供的一种应用场景的架构示意图。图2所示的场景架构中包括配置服务端和分布式系统,其中分布式系统中包括的多个应用服务器。可选地,每个应用服务器中可以包括处理器、硬盘、内存和系统总线等,用于基于配置文件为应用客户端提供服务。
57.图2中示出的配置服务端可以用于存储和解析分布式系统的配置文件,在配置文件发生更新时,可以提取更新后的配置文件中的参数,比如可以提取出键值对(key-value)中的属性值。可选地,配置服务端可以通过消息队列的方式发布参数,并通知分布式系统中的各个应用服务器获取并更新参数。分布式系统中包括的各个应用服务器可以在接收到通知之后,从消息队列中获取参数替换原有的参数。
58.需要说明的是,图2仅作为一种示例,本技术对于应用场景中包括的应用服务器和配置服务端的数量不作限定。
59.下面,结合图2所示的场景架构,对本技术提出配置文件更新方法进行介绍。参见图3,为本技术实施例提供的一种配置文件更新方法流程图。可选地,图3所示的方法流程可以由图2所示场景架构中包括的配置服务端执行,具体包括:
60.301,获取分布式系统更新后的配置文件。
61.可选地,所述更新后的配置文件可以是由用户输入到配置服务端的。配置服务端可以响应于用户的输入操作,获取更新后的配置文件。
62.302,提取配置文件中包括的至少一个更新后的参数,通过消息队列的方式发布至少一个更新后的参数。
63.可选地,配置服务端在获取到更新后的配置文件之后,可以对更新后的配置文件进行解析,提取其中更新的参数,并通过消息队列发布提取到的参数。
64.303,向分布式系统的各个应用服务器发送更新指令。
65.其中,更新指令用于指示各个应用服务器从消息队列获取更新后的参数,以及采
用更新后的参数替换原有的参数。
66.可选地,可以预先配置分布式系统中各个应用服务器订阅配置服务端,以使各个应用服务器可以访问配置服务端发布的消息队列,并获取其中的参数。
67.基于上述方案,本技术提出了采用配置服务端将分布式系统的配置文件统一管理和维护,解决了现有的配置文件杂乱、配置更新繁琐等问题。在需要更新配置文件时,配置服务端可以通过消息队列发布更新后的参数,并通知分布式系统中的各个应用服务器从消息队列下载更新后的参数。相较于现有技术中需要人工更新各个应用服务器的配置文件并重启应用服务器的方式,本技术的方式节约了人工成本且提升了配置文件更新的效率。
68.在一种可能的场景下,分布式系统的各个应用服务器可以在接收到来自配置服务端的更新指令时,访问配置服务端的消息队列,下载更新后的参数。可选地,各个应用服务器在下载参数时,可以根据消息队列中发布的各个参数的描述特征和发布时间戳来确定所要下载的参数。举例来说,若消息队列中存在两个参数a,则各个服务器可以对比两个参数a的发布时间戳,下载最新发布的参数a。再比如,若参数a是以key-value的形式发布的,则各个服务器可以根据key值确定参数a是否是自身需要的参数,如果是则下载,如果不是则不进行下载。
69.在另一种可能的场景下,分布式系统的各个应用服务器可以每间隔设定时间访问配置服务器,下载消息队列中发布的各个参数,并采用下载的参数替换原参数运行应用服务器。可选地,各个应用服务器也可以根据消息队列中发布的各个参数的描述特征和发布时间戳确定下载方式。
70.在一些实施例中,配置服务端在获取分布式系统更新后的配置文件时,可以每间隔设定周期对存储空间中存储的配置文件进行检测,当检测到配置文件中包括的参数有更新时,获取更新后的配置文件。
71.作为一种可能实现的方式,配置服务器可以通过设置定时器的方式周期性地对存储空间中的配置文件进行检测。可选地,配置服务器可以在任一周期结束时获取存储空间中的配置文件,对比获取到的配置文件和上一周期结束时获取到的配置文件,若两版对比文件存在不同参数,则可以确定配置文件有更新。
72.可选地,配置服务端在获取到更新后的配置文件时,可以对更新后的配置文件进行解析,提取出其中变化的参数,并可以通过消息队列发布提取出的参数。
73.在一些场景下,配置服务端在通过消息队列发布提取出的参数之前,还可以先根据分布式系统的各个应用服务器的接口类型,采用预先配置的格式转换规则对提取到的参数进行格式转换。比如,某一个应用服务器的接口仅支持传输键值对格式的数据,配置服务端可以在提取出参数之后,将参数转化为键值对格式的数据。
74.一种可能的情况下,配置服务端可以记录分布式系统中每个应用服务器的接口类型以及每个应用服务器所涉及的参数。可选地,在提取到任一参数之后,配置服务端可以确定涉及该参数的应用服务器的接口类型,根据确定的接口类型对该参数进行格式转换。进一步地,配置服务端可以将格式转换后的参数通过消息队列进行发布。另一种可能的情况下,配置服务端还可以在提取到任一参数之后,将该参数转换为格式转换规则规定的全部格式。
75.在一些实施例中,在分布式系统中新增应用服务器时,可以获取新增的应用服务
器的接口类型,根据新增的应用服务器的接口类型,更新格式转换规则。比如,新增的服务器的接口类型的类型a,且在原格式转换规则中不存在类型a相关的格式转换规则,则可以在原格式转换规则中添加与类型a相关的新的规则。
76.在相关技术中,当应用新增了某一项功能时,需要技术人员将分布式系统中的每个应用服务器的配置文件进行修改,增加与新增的功能相关的配置,比较繁琐。基于此,本技术提出了当应用新增某一项功能时,可以只修改配置服务端存储的配置文件,而不需要逐个修改应用服务器的配置文件。并且,当分布式系统中存在新增的应用服务器时,可以由配置服务端存储和维护该新增的应用服务器的配置文件,不需要技术人员进行人工记录和维护。
77.下面,为了更进一步地理解本技术提出的方案,结合具体的实施例进行介绍。参见图4,为本技术实施例提出的一种配置文件更新方法的流程图,具体包括:
78.401,配置服务端获取分布式系统中各个应用服务器的配置文件。
79.可选地,配置服务端获取的配置文件可以是用户输入的。
80.402,配置服务端检测配置文件中是否存在更新的参数。
81.若是,则继续执行步骤403。
82.若否,则返回执行步骤401。
83.403,配置服务端提取配置文件中更新的参数,根据预先配置的格式转换规则对提取出的各个参数进行格式转换。
84.具体的格式转换过程可以参见上述实施例中的介绍,在此不再进行赘述。
85.404,配置服务端通过消息队列发布格式转换后的参数,并向分布式系统中的各个应用服务器发送更新指令。
86.其中,更新指令用于指示各个应用服务器下载并更新各参数。
87.405,任一应用服务器在接收到更新指令后,从消息队列下载相应的参数,采用更新后的参数替换原有的参数。
88.其中,任一应用服务器为分布式系统中的应用服务器。
89.可选地,关于任一应用服务器从消息队列下载相应参数以及替换参数的过程可以参见上述实施例中的介绍,在此不再进行赘述。
90.基于与上述方法的同一构思,参见图5,为本技术实施例提供的一种配置文件更新的装置500。装置500用于执行上述方法中的各个步骤,为了避免重复,此处不再进行赘述。装置500包括:处理单元501和通信单元502。
91.在一种可能的场景下:
92.处理单元501,用于获取分布式系统更新后的配置文件;
93.所述处理单元501,还用于提取所述配置文件中包括的至少一个更新后的参数,通过消息队列的方式发布所述至少一个更新后的参数;
94.通信单元502,用于向所述分布式系统的各个应用服务器发送更新指令;所述更新指令用于指示所述各个应用服务器从所述消息队列获取所述更新后的参数,以及采用所述更新后的参数替换原有的参数。
95.在一种可能的实施例中,所述处理单元501,还用于:
96.根据所述各个应用服务器的接口类型,采用预先配置的格式转换规则,对所述更
新后的至少一个更新后的参数进行格式转换。
97.在一种可能的实施例中,所述处理单元501,具体用于:
98.每间隔设定周期对存储空间中存储的配置文件进行检测;
99.当检测到配置文件中包括的参数有更新时,获取更新后的配置文件。
100.在一种可能的实施例中,所述处理单元501,还用于:
101.在所述分布式系统中新增应用服务器时,获取所述新增的应用服务器的接口类型;
102.根据所述新增的应用服务器的接口类型,更新所述格式转换规则。
103.在另一种可能的场景下:
104.通信单元502,用于接收到来自配置服务端的更新指令;
105.处理单元501,用于根据所述更新指令访问所述配置服务端的消息队列,下载更新后的参数;或者,每间隔设定时间,访问所述消息队列,下载更新后的参数;
106.所述处理单元501,还用于采用所述更新后的参数替换原有的参数。
107.图6示出了本技术实施例提供的电子设备600结构示意图。本技术实施例中的电子设备600还可以包括通信接口603,该通信接口603例如是网口,电子设备可以通过该通信接口603传输数据,例如通信接口603可以实现上述实施例中介绍的通信单元502的功能。
108.在本技术实施例中,存储器602存储有可被至少一个处理器601执行的指令,至少一个处理器601通过执行存储器602存储的指令,可以用于执行上述方法中的各个步骤,例如,处理器601可以实现上述图5中的处理单元501的功能。
109.其中,处理器601是电子设备的控制中心,可以利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器602内的指令以及调用存储在存储器602内的数据。可选的,处理器601可包括一个或多个处理单元,处理器601可集成应用控制器和调制解调控制器,其中,应用控制器主要处理操作系统和应用程序等,调制解调控制器主要处理无线通信。可以理解的是,上述调制解调控制器也可以不集成到处理器601中。在一些实施例中,处理器601和存储器602可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
110.处理器601可以是通用控制器,例如中央控制器(英文:central processing unit,简称:cpu)、数字信号控制器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本技术实施例中公开的各方法、步骤及逻辑框图。通用控制器可以是微控制器或者任何常规的控制器等。结合本技术实施例所公开的数据统计平台所执行的步骤可以直接由硬件控制器执行完成,或者用控制器中的硬件及软件模块组合执行完成。
111.存储器602作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器602可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(英文:random access memory,简称:ram)、静态随机访问存储器(英文:static random access memory,简称:sram)、可编程只读存储器(英文:programmable read only memory,简称:prom)、只读存储器(英文:read only memory,简称:rom)、带电可擦除可编程只读存储器(英文:electrically erasable programmable read-only memory,简称:eeprom)、磁性存储器、
磁盘、光盘等。存储器602是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本技术实施例中的存储器602还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
112.通过对处理器601进行设计编程,例如,可以将前述实施例中介绍的神经网络模型的训练方法所对应的代码固化到芯片内,从而使芯片在运行时能够执行前述的神经网络模型训练方法的步骤,如何对处理器601进行设计编程为本领域技术人员所公知的技术,这里不再赘述。
113.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
114.本技术是参照根据本技术的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的控制器以产生一个机器,使得通过计算机或其它可编程数据处理设备的控制器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
115.这些计算机程序指令也可存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
116.这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
117.尽管已描述了本技术的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本技术范围的所有变更和修改。
118.显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1