基于Zookeeper的配置数据管理方法、设备和存储介质技术

技术编号:21038945 阅读:25 留言:0更新日期:2019-05-04 07:58
本申请涉及大数据技术领域,公开了一种基于Zookeeper的配置数据管理方法、设备和存储介质。所述方法包括:为每个应用创建用于存放该应用的配置数据的Zookeeper目录节点;在所述Zookeeper目录节点下建立一个或多个Zookeeper子目录节点,其中,所述应用的配置数据包括一个或多个配置项,每个Zookeeper子目录节点用于存放所述一个或多个配置项中的一个配置项的数据;响应于所述Zookeeper目录节点下的配置数据的更新,使所述应用的一个或多个客户端获得所述Zookeeper目录节点下的更新的配置数据。通过本申请的各实施例,可以实现配置数据的集中式管理,简化了对配置数据资源的管理。

Configuration Data Management Method, Equipment and Storage Media Based on Zookeeper

【技术实现步骤摘要】
基于Zookeeper的配置数据管理方法、设备和存储介质
本专利技术涉及大数据领域,特别涉及一种基于Zookeeper的配置数据管理方法、装置、计算设备和计算机可读存储介质。
技术介绍
通常,系统中可能存在多个应用,这多个应用中有些应用可能是分布式应用,即部署在多台机器上。目前,常用的配置数据管理方法是,在部署应用的每台机器上保存该应用的配置文件。这样,一旦要修改配置的时候就会非常麻烦,需要修改多个配置文件,而且容易产生不一致。
技术实现思路
为解决以上问题中的一个或多个,本专利技术实施例提供了一种基于Zookeeper的配置数据管理方法、装置、计算设备和计算机可读存储介质。根据本申请的第一方面,提供一种基于Zookeeper的配置数据管理方法,其包括:为每个应用创建用于存放该应用的配置数据的Zookeeper目录节点;在所述Zookeeper目录节点下建立一个或多个Zookeeper子目录节点,其中,所述应用的配置数据包括一个或多个配置项,每个Zookeeper子目录节点用于存放所述一个或多个配置项中的一个配置项的数据;响应于所述Zookeeper目录节点下的配置数据的更新,使所述应用的一个或多个客户端获得所述Zookeeper目录节点下的更新的配置数据。根据一示例性实施例,所述响应于所述Zookeeper目录节点下的配置数据的更新、使所述应用的一个或多个客户端获得所述Zookeeper目录节点下的更新的配置数据包括:使所述一个或多个客户端监听所述Zookeeper目录节点和所述一个或多个Zookeeper子目录节点;响应于监听到所述Zookeeper目录节点下的配置数据发生了更新,所述一个或多个客户端从发生更新的Zookeeper子目录节点获取更新的配置项数据。根据一示例性实施例,所述响应于所述Zookeeper目录节点下的配置数据的更新、使所述应用的一个或多个客户端获得所述Zookeeper目录节点下的更新的配置数据包括:响应于所述Zookeeper目录节点或其Zookeeper子目录节点下的配置数据的更新,查询预先配置和保存的节点-更新下发地址对应表,以得到与发生配置项数据变更的Zookeeper目录节点或Zookeeper子目录节点相对应的更新下发地址;将更新的配置数据下发到所述更新下发地址。根据一示例性实施例,所述使所述一个或多个客户端监听所述Zookeeper目录节点和所述一个或多个Zookeeper子目录节点包括:对于所述Zookeeper目录节点下的特定Zookeeper子目录节点,仅使所述一个或多个客户端中的特定客户端监听所述特定Zookeeper子目录节点。根据一示例性实施例,所述响应于所述Zookeeper目录节点和/或其Zookeeper子目录节点下的配置数据的更新、将更新的配置数据下发到预先配置的地址包括:在所述更新下发地址为特定地址的情况下,将包括全部配置项数据的更新的配置数据下发到所述特定地址。根据一示例性实施例,所述配置数据管理方法还包括:为所述Zookeeper目录节点和/或其Zookeeper子目录节点设置访问权限,使得只有指定的用户才有权限访问相应的Zookeeper目录节点和/或Zookeeper子目录节点。根据一示例性实施例,所述配置数据管理方法还包括:针对用户对配置数据的改变操作,判断所改变的配置项是否为新增配置项;在所改变的配置项为新增配置项的情况下,在所述Zookeeper目录节点下新建Zookeeper子目录节点用于存放所述新增配置项数据;在所改变的配置项不是新增配置项的情况下,更新所改变的配置项相对应的Zookeeper子目录节点下的配置项数据。根据本申请的第二方面,提供一种基于Zookeeper的配置数据管理装置,其包括:目录节点创建模块,其被配置为:为每个应用创建用于存放该应用的配置数据的Zookeeper目录节点;子目录节点建立模块,其被配置为:在所述Zookeeper目录节点下建立一个或多个Zookeeper子目录节点,其中,所述应用的配置数据包括一个或多个配置项,每个Zookeeper子目录节点用于存放所述一个或多个配置项中的一个配置项的数据;更新实施模块,其被配置为:响应于所述Zookeeper目录节点下的配置数据的更新,使所述应用的一个或多个客户端获得所述Zookeeper目录节点下的更新的配置数据。根据一示例性实施例,所述更新实施模块包括:监听单元,其被配置为:使所述一个或多个客户端监听所述Zookeeper目录节点和所述一个或多个Zookeeper子目录节点;更新数据获取单元,其被配置为:响应于监听到所述Zookeeper目录节点下的配置数据发生了更新,所述一个或多个客户端从发生更新的Zookeeper子目录节点获取更新的配置项数据。根据一示例性实施例,所述更新实施模块包括:地址查询单元,其被配置为:响应于所述Zookeeper目录节点或其Zookeeper子目录节点下的配置数据的更新,查询预先配置和保存的节点-更新下发地址对应表,以得到与发生配置项数据变更的Zookeeper目录节点或Zookeeper子目录节点相对应的更新下发地址;更新下发单元,其被配置为:将更新的配置数据下发到所述更新下发地址。根据一示例性实施例,所述配置数据管理装置还包括更新写入模块,所述更新写入模块包括:判断单元,其被配置为:针对用户对配置数据的改变操作,判断所改变的配置项是否为新增配置项;新增写入单元,其被配置为:在所改变的配置项为新增配置项的情况下,在所述Zookeeper目录节点下新建Zookeeper子目录节点用于存放所述新增配置项数据;改变写入单元,其被配置为:在所改变的配置项不是新增配置项的情况下,更新所改变的配置项相对应的Zookeeper子目录节点下的配置项数据。根据一示例性实施例,所述更新下发单元包括:全量数据下发单元,其被配置为:在所述更新下发地址为特定地址的情况下,将包括全部配置项数据的更新的配置数据下发到所述特定地址。根据一示例性实施例,所述配置数据管理装置还包括:权限设置模块,其被配置为:为所述Zookeeper目录节点和/或其Zookeeper子目录节点设置访问权限,使得只有指定的用户才有权限访问相应的Zookeeper目录节点和/或Zookeeper子目录节点。根据本申请的第三方面,提供一种计算设备,所述计算设备包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序在被所述处理器执行时,使得所述计算设备执行如上所述的方法实施例中的任一个。根据本申请的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被一个或多个处理器执行时实现如上所述的方法实施例中的任一个。本申请的实施例提供的技术方案可以包括以下有益效果:在本申请如上所述以及如下所述的各实施例中,通过将配置数据与应用本身分离开来,并将配置数据集中放置到Zookeeper目录节点上,可以实现配置数据的集中式管理。在一些实施例中,通过为配置数据的每个配置项建立一个Zookeeper子目录节点,可以方便地获知是哪个配置项发生了更新,使得只获取发生更新的配置项数据成为可能,从而减少数据传输量以及更新量,提高系统性能。另外,在一些实施例中,可以将本文档来自技高网...

【技术保护点】
1.一种基于Zookeeper的配置数据管理方法,其特征在于,包括:为每个应用创建用于存放该应用的配置数据的Zookeeper目录节点;在所述Zookeeper目录节点下建立一个或多个Zookeeper子目录节点,其中,所述应用的配置数据包括一个或多个配置项,每个Zookeeper子目录节点用于存放所述一个或多个配置项中的一个配置项的数据;响应于所述Zookeeper目录节点下的配置数据的更新,使所述应用的一个或多个客户端获得所述Zookeeper目录节点下的更新的配置数据。

【技术特征摘要】
1.一种基于Zookeeper的配置数据管理方法,其特征在于,包括:为每个应用创建用于存放该应用的配置数据的Zookeeper目录节点;在所述Zookeeper目录节点下建立一个或多个Zookeeper子目录节点,其中,所述应用的配置数据包括一个或多个配置项,每个Zookeeper子目录节点用于存放所述一个或多个配置项中的一个配置项的数据;响应于所述Zookeeper目录节点下的配置数据的更新,使所述应用的一个或多个客户端获得所述Zookeeper目录节点下的更新的配置数据。2.如权利要求1所述的配置数据管理方法,其特征在于,所述响应于所述Zookeeper目录节点下的配置数据的更新、使所述应用的一个或多个客户端获得所述Zookeeper目录节点下的更新的配置数据包括:使所述一个或多个客户端监听所述Zookeeper目录节点和所述一个或多个Zookeeper子目录节点;响应于监听到所述Zookeeper目录节点下的配置数据发生了更新,所述一个或多个客户端从发生更新的Zookeeper子目录节点获取更新的配置项数据。3.如权利要求1所述的配置数据管理方法,其特征在于,所述响应于所述Zookeeper目录节点下的配置数据的更新、使所述应用的一个或多个客户端获得所述Zookeeper目录节点下的更新的配置数据包括:响应于所述Zookeeper目录节点或其Zookeeper子目录节点下的配置数据的更新,查询预先配置和保存的节点-更新下发地址对应表,以得到与发生配置项数据变更的Zookeeper目录节点或Zookeeper子目录节点相对应的更新下发地址;将更新的配置数据下发到所述更新下发地址。4.如权利要求2所述的配置数据管理方法,其特征在于,所述使所述一个或多个客户端监听所述Zookeeper目录节点和所述一个或多个Zookeeper子目录节点包括:对于所述Zookeeper目录节点下的特定Zookeeper子目录节点,仅使所述一个或多个客户端中的特定客户端监听所述特定Zookeeper子目录节点。5.如权利要求3所述的配置数据管理...

【专利技术属性】
技术研发人员:罗厚付
申请(专利权)人:中国平安人寿保险股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1