配置信息的更新方法、装置及系统的利记博彩app

文档序号:9754340阅读:609来源:国知局
配置信息的更新方法、装置及系统的利记博彩app
【技术领域】
[0001]本发明涉及计算机网络技术领域,具体涉及一种配置信息的更新方法、装置及系统。
【背景技术】
[0002]在分布式系统如分布式实时计算系统中,各分布式设备往往分布在不同的服务器节点中,为了各分布式设备之间能够正确的协作,往往需要共享一些配置信息,并需要配置信息能够被动态的修改和快速同步。
[0003]现有的分布式系统中,各分布式设备同步配置信息的技术一般借用ZooKeeper提供的高可用性和事件通知机制实现。ZooKeeper是一个针对大型分布式系统的可靠协调系统,提供的功能包括配置维护、名字服务、分布式同步以及组服务等。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。
[0004]现有技术中,ZooKeeper集群将配置信息存放在集群内的一个节点服务器上,需要配置信息的分布式设备分别作为订阅客户端连接ZooKeeper集群去读取并订阅这个配置信息,所谓订阅也就是利用ZooKeeper本身提供的事件通知机制监听存储了配置信息的ZooKeeper集群中的节点服务器中配置信息的改变。当配置信息更改的时候相应订阅配置信息的组件会接收到一个节点配置信息改变事件,订阅者可以根据这个事件,去ZooKeeper上获取最新的节点数据也就是配置信息。得到新的配置信息的订阅客户端会及时更新和同步最新的配置信息,然后做出相应的改变。各订阅客户端与ZooKeeper集群中的服务器节点是通过ZooKeeper提供的心跳机制保持连接的。
[0005]然而在实际应用中,存在一些灰度发布的场景,即对于添加的新功能,仅希望选取一部分分布式设备进行测试,而另一部分分布式设备仍提供原有功能。在灰度发布测试通过后,再行推广给所有的分布式设备。根据现有的ZooKeeper集群提供的订阅机制,当节点服务器中的配置信息发生更新时,所有订阅该配置信息的设备都会获取新的配置信息进行及时更新和同步。因此,上述现有技术无法满足仅更新一部分分布式设备的配置信息的要求,进而无法适用于灰度发布的场景。

【发明内容】

[0006]鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的配置信息的更新方法、装置及系统。
[0007]根据本发明的一个方面,提供了一种配置信息的更新方法,用于更新多个设备中至少一个设备的配置信息,所述方法包括:
[0008]接收测试开始命令,获取并记录测试设备列表和待更新的配置信息项列表;
[0009]根据所述多个设备对所述测试设备列表和所述配置信息项列表的更新订阅,向所述测试设备列表中记录的各个设备通知所述配置信息项列表中记录的各个配置信息项,以供各个设备更新各自的配置信息。
[0010]根据本发明的另一方面,提供了一种配置信息的更新装置,用于更新多个设备中至少一个设备的配置信息,所述装置包括:
[0011 ]接收模块,适于接收测试开始命令;
[0012]记录模块,适于获取并记录测试设备列表和待更新的配置信息项列表;
[0013]通知模块,适于根据所述多个设备对所述测试设备列表和所述配置信息项列表的更新订阅,向所述测试设备列表中记录的各个设备通知所述配置信息项列表中记录的各个配置信息项,以供各个设备更新各自的配置信息。
[0014]根据本发明的另一方面,提供了一种配置信息的更新系统,包括上述的配置信息的更新装置,还包括:所述多个设备。
[0015]根据本发明提供的配置信息的更新方法、装置及系统,在接收测试开始命令之后,获取并记录测试设备列表和待更新的配置信息项列表,根据多个设备对测试设备列表和配置信息项列表的更新订阅,向测试设备列表中记录的各个设备通知配置信息项列表中记录的各个配置信息项,以供各个设备更新各自的配置信息。本发明通过配置订阅机制使得测试设备列表中记录的各个设备优先按照配置信息项列表中记录的各个配置信息项更新和同步各自的配置信息,其它设备依然按照原生配置信息更新和同步自己的配置信息,从而满足了仅更新一部分设备的配置信息的要求,使本发明适用于灰度发布的场景。
[0016]上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的【具体实施方式】。
【附图说明】
[0017]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0018]图1示出了根据本发明一个实施例的配置信息的更新方法的流程示意图;
[0019]图2示出了根据本发明另一个实施例的配置信息的更新方法的流程示意图;
[0020]图3示出了根据本发明一个实施例的配置信息的更新装置的功能框图;
[0021]图4示出了根据本发明一个实施例的配置信息的更新系统的功能框图。
【具体实施方式】
[0022]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0023]基于现有技术存在的缺陷,本发明提供的解决方案具体为,在ZooKeeper集群中除了注册用于保存原生配置信息的节点服务器A以外,还注册用于保存测试设备列表的节点服务器B和用于保存配置信息项列表的节点服务器C,各个分布式设备(以下简称设备)除了订阅节点服务器A的配置信息以外,还需订阅节点服务器B的测试设备列表和节点服务器C的配置信息项列表。本发明中,一旦节点服务器A、B和C所保存的信息发生更新,订阅这些信息的设备就会接收到节点服务器A、B和C发送的信息改变事件,订阅设备根据该事件,去相应的节点服务器中获取更新后的信息。对于每个设备,如果通过从节点服务器B获取的测试设备列表获知该设备属于测试设备列表中的设备,那么该设备按照从节点服务器C获取的配置信息项列表中记录的各个配置信息项更新和同步自己的配置信息。如果通过从节点服务器B获取的测试设备列表获知设备不属于测试设备列表中的设备,那么该设备依然按照从节点服务器A获取的原生配置信息更新和同步自己的配置信息。
[0024]本发明提供的解决方案适用于灰度发布的场景,因此,在以下实施例中,以灰度发布的场景为例进行说明。
[0025]图1示出了根据本发明一个实施例的配置信息的更新方法的流程示意图。如图1所示,该方法包括如下步骤:
[0026]步骤SlOl,接收测试开始命令,获取并记录测试设备列表和待更新的配置信息项列表。
[0027]测试开始命令为灰度发布的开始命令,灰度发布是指选取一部分设备测试添加的新功能,而另一部分设备仍提供原有功能,即仅一部分设备需要更新配置信息,而另一部分设备无需更新配置信息。这里需要更新配置信息的设备为测试设备,需要更新的配置信息项为待更新的配置信息项。
[0028]在接收到测试开始命令后,需要获取测试设备列表。获取测试设备列表可以采取以下几种方式:
[0029]方式一,获取预先配置的测试设备列表:预先配置的测试设备列表中记录的是预先选取的测试设备。例如,在所有的设备中固定设置若干台设备为测试设备,一旦有测试需求时,就利用这些设备进行测试。
[0030]方式二,获取测试开始命令中携带的测试设备列表:测试管理员在发送测试开始命令的测试管理设备中配置此次测试过程的测试设备列表,测试设备列表携带在测试开始命令中发送并记录到ZooKeeper集群的节点服务器B中。
[0031]方式三,根据多个设备的负载状况选择至少一个设备记入测试设备列表:选择负载较小的设备记入测试设备列表中,以免测试任务对设备的性能产生影响。
[0032]以上测试设备列表的获取方式仅为具体示例,本发明不仅限于采取上述三种方式,还可以采取其它替代方式,例如随机选取测试设备记入测试设备列表等等。
[0033]待更新的配置信息项列表为测试管理员在发送测试开始命令的测试管理设备中进行配置的,为了测试新功能,需要更新与新功能对应的哪些配置信息是由测试管理员写入的,待更新的配置信息项列表可携带在测试开始命令中发送并记录到ZooKeeper集群的节点服务器C中,或者,在测试开始命令发送
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1