配置文件的更新方法及装置与流程

文档序号:25785473发布日期:2021-07-09 10:38阅读:111来源:国知局
配置文件的更新方法及装置与流程

1.本发明涉及数据同步处理技术领域,尤其涉及配置文件的更新方法及装置。


背景技术:

2.全球音视频会议系统,随着业务功能日益增多,各个模块、对应的各种功能的开关、参数的配置也越来越多,临时服务器环境变量配置修改越来越多,传统的通过一个程序管理一个配置文件的方式,越来越不能满足需求。
3.在分布式系统中,一般通过配置中心进行管理各个配置文件,把各个程序或者模块需要用到的配置,集中管理起来。程序需要配置的话,直接找配置中心进行配置读取。现有技术中,从配置中心读取配置文件一般有两种方式:每次全量拉取配置文件信息;或每次只拉取变更的部分配置信息。
4.上述配置文件的方式存在以下缺点:1)终端程序向配置中心取全量配置文件,取回来之后,本地要进行全量对比,找出变更的部分进行应用生效,终端实现逻辑复杂;2)如果只取更新的配置文件,因为中间可能某次传输丢失,导致中间有缺失的变更信息;3)服务端和终端的配置文件获取方法较少,当服务器修改时,需要终端的大量应用程序配合工作修改。


技术实现要素:

5.本发明目的在于,提供一种配置文件的更新方法及装置,将本次配置项和全量配置项合并在一个配置文件中,提高更新效率。
6.为实现上述目的,本发明提供如下技术方案:
7.一种配置文件的更新方法,所述更新方法由服务器执行,包括:在服务器存储的配置文件发生变更时,生成更新通知分发给各个终端;响应所述终端根据所述更新通知发送的更新请求,将变更后的配置文件推送至所述终端;其中,变更后的配置文件包括本次配置项和全量配置项;以使所述终端完成配置文件更新:根据变更后的配置文件的版本号与终端存储的配置文件的版本号的差异,选择本次配置项更新或全量配置项更新。
8.优选地,还包括:获取终端在接收到所述更新通知时生成的获知响应;若没有在预设时间内接受到所述获知响应,重复推送所述更新通知给终端,直到推送的次数达到预设值。
9.优选地,所述更新通知分发的对象包括由注册中心提供,无需全网推送。
10.一种配置文件的更新方法,所述更新方法由终端执行,包括:获取服务器发送的更新通知,根据所述更新通知发送更新请求至所述服务器;获取变更后的配置文件;其中,变更后的配置文件包括本次配置项和全量配置项;根据变更后的配置文件的版本号与终端存储的配置文件的版本号的差异,选择本次配置项更新或全量配置项更新。
11.优选地,还包括:在接收到所述更新通知时,生成获知响应反馈给服务器。
12.优选地,所述根据变更后的配置文件的版本号与终端存储的配置文件的版本号的
差异,选择本次配置项更新或全量配置项更新,包括:若变更后的配置文件的版本号

终端存储的配置文件的版本号=1,选择所述本次配置项进行更新;若变更后的配置文件的版本号

终端存储的配置文件的版本号>1,选择所述全量配置项进行更新。
13.优选地,所述若变更后的配置文件的版本号

终端存储的配置文件的版本号>1,选择所述全量配置项进行更新,还包括:对所述全量配置项与终端存储的配置文件进行全量对比,查找变更项;加载所述变更项进行更新。
14.优选地,还包括定时向服务器发送更新查询信号,查询服务器存储的配置文件的版本号;当查询到的服务器存储的配置文件的版本号与终端存储的配置文件的版本号不一致时,发送更新请求至所述服务器。
15.一种配置文件的更新装置,包括:推送模块,用于在服务器存储的配置文件发生变更时,生成更新通知分发给各个终端;配置模块,用于响应所述终端根据所述更新通知发送的更新请求,将变更后的配置文件推送至所述终端;其中,变更后的配置文件包括本次配置项和全量配置项;配置文件模块,用于存储不同版本号的配置文件,以使所述终端完成配置文件更新:根据变更后的配置文件的版本号与终端存储的配置文件的版本号的差异,选择本次配置项更新或全量配置项更新。
16.一种配置文件的更新装置,包括:请求模块,用于获取服务器发送的更新通知,根据所述更新通知发送更新请求至所述服务器;文件获取模块,用于获取变更后的配置文件;其中,变更后的配置文件包括本次配置项和全量配置项;配置项选择模块,用于根据变更后的配置文件的版本号与终端存储的配置文件的版本号的差异,选择本次配置项更新或全量配置项更新。
17.本发明的实施例,具有如下有益效果:
18.本发明公开的一种配置文件的更新方法及装置,将本次配置项和全量配置项合并在一个配置文件中,终端在更新过程中只需获取一次,即可在本地进行选择性更新,进一步地,服务器和注册中心提供的终端交互,采用服务器推送,终端定时查询拉取模式,及时发现更新版本的配置文件。相较于现有技术能够有效提高配置文件的更新效率。
附图说明
19.为了更清楚地说明本发明的技术方案,下面将对实施方式中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
20.图1为本发明某一实施例涉及的配置中心系统结构示意图;
21.图2为本发明某一由服务器执行的实施例提供的配置文件的更新方法的流程示意图;
22.图3为本发明另一由服务器执行的实施例提供的配置文件的更新方法的流程示意图;
23.图4为本发明某一由终端执行的实施例提供的配置文件的更新方法的流程示意图;
24.图5为本发明另一由终端执行的实施例提供的配置文件的更新方法的流程示意图;
25.图6为本发明又一由终端执行的实施例提供的配置文件的更新方法的流程示意图;
26.图7是本发明某一实施例提供的配置文件的更新方法的信令示意图;
27.图8为本发明某一实施例提供的配置文件的更新装置的结构意图;
28.图9为本发明另一实施例提供的配置文件的更新装置的结构意图。
具体实施方式
29.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
30.应当理解,文中所使用的步骤编号仅是为了方便描述,不对作为对步骤执行先后顺序的限定。
31.应当理解,在本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
32.术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
33.术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
34.请参阅图1,图1为本发明实施例涉及的配置中心系统结构示意图,介绍进行配置文件版本的管理、更新通知的分发以及终端如何拉取配置文件并应用生效。其中,配置文件仓库:用于存储所有不同版本号的配置文件。配置服务:进行配置文件的管理,包括配置文件的上传和修改等。推送服务:在服务器存储的配置文件发生变更时,生成更新通知,推送到各个终端对应的应用程序,终端收到更新通知后,向配置服务请求配置文件的下载。注册中心:用于维护终端应用程序,和配置文件的订阅关系。当一个配置文件更新后,实现推送到所有订阅此配置文件的应用程序的对应终端。代理服务:为了满足高并发,一般应用程序通过走代理服务。
35.请参阅图2,图2为本发明某一由服务器执行的实施例提供的配置文件的更新方法的流程示意图,在本实施例中,所述更新方法包括:
36.步骤s110,在服务器存储的配置文件发生变更时,生成更新通知分发给各个终端。
37.配置文件发生变更由服务器的配置服务感知,服务器的推送服务将更新通知,推送到相关的应用程序终端,具体推送到哪些终端,由注册中心提供,应用程序终端列表,无需全网推送。即在一实施例中,更新通知分发的对象由注册中心提供,无需全网推送。
38.步骤s120,响应终端根据更新通知发送的更新请求,将变更后的配置文件推送至终端,以使终端完成配置文件更新:根据变更后的配置文件的版本号与终端存储的配置文件的版本号的差异,选择本次配置项更新或全量配置项更新。其中,变更后的配置文件包括本次配置项和全量配置项。配置文件采用全量和本次更新的模式组成,假设应用程序的当前配置文件版本v0.102,后面收到每次更新的配置文件版本如v0.103、v0.104递增,配置文
件都带上全量配置项,和本次配置项,本次配置项中的内容可以快速的让终端加载变化的配置项,无需关心全量配置项。
39.请参阅图3,图3为本发明另一由服务器执行的实施例提供的配置文件的更新方法的流程示意图,在本实施例中,所述方法还包括:步骤s111,获取终端在接收到更新通知时生成的获知响应。若没有在预设时间内接受到获知响应,重复推送更新通知给终端,直到推送的次数达到预设值。如果在限定时间和尝试次数内,未能收到客户端的响应,也结束推送,避免一直在循环,然后等待一下次有配置更新,再走一遍推送流程。
40.请参阅图4,图4为本发明某一由终端执行的实施例提供的配置文件的更新方法的流程示意图,在本实施例中,所述更新方法由终端执行,包括:
41.步骤s210,获取服务器发送的更新通知,根据更新通知发送更新请求至服务器。
42.步骤s220,获取变更后的配置文件;其中,变更后的配置文件包括本次配置项和全量配置项。
43.如果变更后的配置文件一次性获取成功,此流程结束,如果在限定的时间内,未下载成功,则会进行重试,达到限定的重试次数,还没有下载成功,则进入失败状态。如果在限定时间和尝试次数内,未能完成更新,也结束更新,避免一直在循环,然后等待一下次有配置更新,再走一遍流程。
44.步骤s230,根据变更后的配置文件的版本号与终端存储的配置文件的版本号的差异,选择本次配置项更新或全量配置项更新。
45.步骤s230,包括:若变更后的配置文件的版本号

终端存储的配置文件的版本号=1,选择本次配置项进行更新;若变更后的配置文件的版本号

终端存储的配置文件的版本号>1,选择全量配置项进行更新。
46.如图5所示,在终端本地对变更后的配置文件的版本号与终端存储的配置文件的版本号进行比较,例如终端存储的配置文件版本号是v0.102,获取新配置文件版本号是v0.103,版本号是连续的加1,即变更后的配置文件的版本号

终端存储的配置文件的版本号=1,那么只需要加载配置文件更新的部分(本次配置项),这样类似于增量更新,效率极高。
47.如果获取到版本号不是连续的加1,即变更后的配置文件的版本号

终端存储的配置文件的版本号>1,是v0.104,说明终端的配置文件在更新过程中中间有漏版本,可能上次获取配置文件失败,因此不能只更新本次配置项里面的内容,需要选择全量配置项进行更新,一般地,终端会进行配置的全量对比,找出变更的项,把变更项加载进去,而不是真正意义上的全量刷新。例如,若变更后的配置文件的版本号

终端存储的配置文件的版本号>1,选择全量配置项进行更新,还包括:对全量配置项与终端存储的配置文件进行全量对比,查找变更项;加载变更项进行更新。
48.请参阅图6,图6为本发明又一由终端执行的实施例提供的配置文件的更新方法的流程示意图,在本实施例中,还包括:在接收到更新通知时,生成获知响应反馈给服务器。终端生成获知响应反馈给服务器,表明已经收到更新通知,在更新通知中获取,本次更新的配置文件的地址。在某一实施例中,还包括:定时向服务器发送更新查询信号,查询服务器存储的配置文件的版本号;当查询到的服务器存储的配置文件的版本号与终端存储的配置文件的版本号不一致时,发送更新请求至服务器。
49.请参阅图7,图7是本发明某一实施例提供的配置文件的更新方法的信令示意图,在本实施例中与上述实施例相同的部分,在此不再赘述。在本实施例中,配置服务有更新时,告知推送服务;推送服务把更新通知告知到对应的应用程序终端;终端响应更新通知,生成获知响应并反馈;终端根据更新通知中的url地址,向配置文件仓库获取更新的配置文件;为了更新的可靠性,终端也会定时主动向配置服务查询是否有配置更新,如果没有配置更新,配置服务直接回应,无更新,如果有配置更新,终端主动向配置文件仓库获取配置文件。
50.请参阅图8,图8为本发明某一实施例提供的配置文件的更新装置的结构意图,在本实施例中与上述实施例相同的部分,在此不再赘述。在本实施例中,所述装置包括:
51.推送模块11,用于在服务器存储的配置文件发生变更时,生成更新通知分发给各个终端;
52.配置模块12,用于响应终端根据更新通知发送的更新请求,将变更后的配置文件推送至终端,以使终端完成配置文件更新:根据变更后的配置文件的版本号与终端存储的配置文件的版本号的差异,选择本次配置项更新或全量配置项更新。其中,变更后的配置文件包括本次配置项和全量配置项;
53.请参阅图9,图9为本发明另一实施例提供的配置文件的更新装置的结构意图,在本实施例中与上述实施例相同的部分,在此不再赘述。在本实施例中,所述装置包括:
54.请求模块21,用于获取服务器发送的更新通知,根据更新通知发送更新请求至服务器;
55.文件获取模块22,用于获取变更后的配置文件;其中,变更后的配置文件包括本次配置项和全量配置项;
56.配置项选择模块23,用于根据变更后的配置文件的版本号与终端存储的配置文件的版本号的差异,选择本次配置项更新或全量配置项更新。
57.本发明提供的配置文件的更新方法及装置,将本次配置项和全量配置项合并在一个配置文件中,终端在更新过程中只需获取一次,即可在本地进行选择性更新,进一步地,服务器和注册中心提供的终端交互,采用服务器推送,终端定时查询拉取模式,及时发现更新版本的配置文件。相较于现有技术能够有效提高配置文件的更新效率。
58.以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1