【技术实现步骤摘要】
本专利技术涉及计算机
,特别涉及一种分布式系统及分布式系统中配置信息 的更新方法。
技术介绍
在分布式系统如分布式实时计算系统中,各分布式组件往往分布在不同的服务器 节点中,为了各分布式组件之间能够正确的协作,往往需要共享一些配置信息,并需要配置 信息能够被动态的修改和快速同步。 现有的分布式系统中,各分布式组件同步配置信息的技术一般借用ZooKeeper提 供的高可用性和事件通知机制实现。ZooKeeper是一个针对大型分布式系统的可靠协调系 统,提供的功能包括配置维护、名字服务、分布式同步以及组服务等。ZooKeeper的目标就是 封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用 户。图1为现有的分布式计算系统中采用ZooKe印er更新配置信息的场景图。通过一个客 户端(Client)连接ZooKeeper集群将配置信息存放在ZooKeeper集群的一个节点服务器 (service)或者多个节点服务器(service)上,如图1所示,以ZooKeeper集群包括三个节点 服务器A、服务器B和服务器C,包括六个客户端(Client)客户端A、客户端B、客户端C、客 户端D、客户端E和客户端F为例,描述配置信息的更新流程。具体可以包括如下步骤:1、客 户端E作为配置客户端将配置信息写入至ZooKe印er集群中服务器B和服务器C中。2、需 要配置信息的分布式组件客户端A、客户端B、客户端C、客户端D和客户端F分别作为订阅 客户端连接ZooKe印er集群去读取并订阅这个配置信息,所谓订阅 ...
【技术保护点】
一种分布式系统,其特征在于,所述系统包括配置客户端、服务器集群、配置信息的更新装置和至少一个订阅客户端; 所述服务器集群,用于存储配置信息;所述服务器集群中包括至少一台服务器; 所述配置客户端,与所述服务器集群中的各所述服务器进行通信,用于更新所述服务器集群中的所述配置信息; 所述配置信息的更新装置,用于对所述服务器集群进行监听,判断所述服务器集群中是否发生配置信息改变事件; 所述配置信息的更新装置,还用于当发生配置信息改变事件时,从所述服务器集群中获取更新的配置信息; 所述配置信息的更新装置,还用于向各所述订阅客户端发送包括所述更新的配置信息的消息; 所述配置信息的更新装置,还用于确认各所述订阅客户端是否成功收到所述更新的配置信息; 各所述订阅客户端,分别与所述配置信息的更新装置连接,用于接收所述配置信息的更新装置发送的包括所述更新的配置信息的消息。
【技术特征摘要】
1. 一种分布式系统,其特征在于,所述系统包括配置客户端、服务器集群、配置信息的 更新装置和至少一个订阅客户端; 所述服务器集群,用于存储配置信息;所述服务器集群中包括至少一台服务器; 所述配置客户端,与所述服务器集群中的各所述服务器进行通信,用于更新所述服务 器集群中的所述配置信息; 所述配置信息的更新装置,用于对所述服务器集群进行监听,判断所述服务器集群中 是否发生配置信息改变事件; 所述配置信息的更新装置,还用于当发生配置信息改变事件时,从所述服务器集群中 获取更新的配置信息; 所述配置信息的更新装置,还用于向各所述订阅客户端发送包括所述更新的配置信息 的消息; 所述配置信息的更新装置,还用于确认各所述订阅客户端是否成功收到所述更新的配 置信息; 各所述订阅客户端,分别与所述配置信息的更新装置连接,用于接收所述配置信息的 更新装置发送的包括所述更新的配置信息的消息。2. 根据权利要求1所述的系统,其特征在于,所述配置信息的更新装置包括配置组件 和确认组件; 所述配置组件,用于对所述服务器集群进行监听,判断所述服务器集群中是否发生配 置信息改变事件; 所述配置组件,还用于当发生配置信息改变事件时,从所述服务器集群中获取更新的 配置信息; 所述配置组件,还用于向各所述订阅客户端发送包括所述更新的配置信息的消息; 所述确认组件,用于确认各所述订阅客户端是否成功收到所述配置组件发送的所述更 新的配置信息。3. 根据权利要求2所述的系统,其特征在于,所述配置组件,还用于生成配置信息标 识,所述配置信息标识用于唯一标识向所述订阅客户端发送的所述配置信息; 所述配置组件,具体用于向所述订阅客户端发送包括所述更新的配置信息和所述配置 信息标识的消息。4. 根据权利要求3所述的系统,其特征在于,所述配置组件,还用于向所述确认组件发 送所述配置信息标识。5. 根据权利要求4所述的系统,其特征在于,所述确认组件,还用于接收所述订阅客户 端发送的包括配置信息标识的响应消息,所述订阅客户端发送的所述配置信息标识为所述 订阅客户端从接收所述配置组件发送的所述消息中获取的; 所述确认组件,具体用于根据所述配置组件发送的所述配置信息标识和所述订阅客户 端发送的所述配置信息标识,确认所述订阅客户端是否成功收到所述更新的配置信息。6. 根据权利要求5的系统,其特征在于,所述确认组件,具体用于判断所述配置组件发 送的所述配置信息标识和所述订阅客户端发送的所述配置信息标识是否相同,若相同,确 定所述订阅客户端成功收到所述配置组件发送的所述更新的配置信息;否则,则确定所述 订阅客户端未成功收到所述配置组件发送的所述更新的配置信息。7. 根据权利要求6所述的系统,其特征在于,所述确认组件,还用于在确定所述订阅 客户端成功收到所述配置组件发送的所述更新的配置信息时,向所述配置组件发送所述订 阅客户端成功接收到所述配置信息的响应消息; 或者,所述确认组件,还用于确定所述订阅客户端未成功收到所述配置组件发送的所 述更新的配置信息时,向所述配置组件发送所述订阅客户端未成功接收到所述配置信息的 响应消息;此时对应地,所述配置组件,还用于在接收到所述确认组件发送的所述订阅客户 端未成功接收到所述配置信息的响应消息后,重新向所述订阅客户端发送包括所述更新的 配置信息和所述配置信息标识的所述消息。8. 根据权利要求7所述的系统,其特征在于,所述配置组件,还用于若在预设时间段内 未接收到所述确认组件发送的所述订阅客户端成功或者未成功接收到所述配置信息的响 应消息时,确定所述订阅客户端未成功接收到所述配置信息; 所述配置组件,还用于重新向所述订阅客户端发送包括所述更新的配置信息和所述配 置信息标识的所述消息。9. 一种分布式系统中配置信息的更新方法,其特征在于,所述分布式系统包括配置客 户端、服务器集群、配置信息的更新装置和至少一个订阅客户端;所述方法包括: 所述配置客户端更新所述服务器集群中的配置信息; 所述配置信息的更新装置对所述服务器集群进行监听,判断所述服务器集群中是否发 生...
【专利技术属性】
技术研发人员:易小华,洪坤乾,张文郁,
申请(专利权)人:腾讯数码天津有限公司,
类型:发明
国别省市:天津;12
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。