一种分布式集群环境下集中配置分发管理的方法

文档序号:7812514阅读:674来源:国知局
一种分布式集群环境下集中配置分发管理的方法
【专利摘要】本发明公开了一种分布式集群环境下集中配置分发管理的方法,其具体实现过程为:加载配置文件;检查分布式协同服务中是否存在该项配置;如果存在,读取协同服务中的配置加载到应用系统中;如果不存在,将本地配置上传到协同服务并加载到应用系统中;如果需要修改某项配置,通过集中管理工具修改协同服务中的配置;最后,在应用系统中使用配置。该一种分布式集群环境下集中配置分发管理的方法与现有技术相比,为分布式集群环境下Web应用系统配置提供统一的集中管理,解决分布式系统部署、更新、管理成本高的问题,实用性强。
【专利说明】—种分布式集群环境下集中配置分发管理的方法

【技术领域】
[0001]本发明涉及计算机集群【技术领域】,具体地说是一种实用性强、分布式集群环境下集中配置分发管理的方法。

【背景技术】
[0002]云计算、移动互联、社交网络、物联网、大数据等技术蓬勃发展的时代下,信息正以不可估量的速度在被创造和传播,并且这种趋势已经从互联网蔓延至各个行业和领域。承载信息展现和与用户交互的互联网系统、移动互联系统等分布式系统如雨后春笋般应运而生,跨地域、跨机房的大规模分布式系统面临许多问题和挑战,而简单、高效、可靠的管理分布式系统配置是其中至关重要的一环,因为系统配置影响整个分布式系统的运行状态。
[0003]基于此,现提出一种为组织的分布式系统提供应用配置集中管理的分布式集群环境下集中配置分发管理的方法。


【发明内容】

[0004]本发明的技术任务是针对以上不足之处,提供一种实用性强、分布式集群环境下集中配置分发管理的方法。
一种分布式集群环境下集中配置分发管理的方法,其具体实现过程为:
一、首先加载配置文件;
二、检查分布式协同服务中是否存在该项配置;
三、如果存在,读取协同服务中的配置加载到应用系统中;另监听分布式协同服务中该项配置的变化;
四、如果不存在,将本地配置上传到协同服务并加载到应用系统中;另监听分布式协同服务中该项配置的变化;
五、如果需要修改某项配置,通过集中管理工具修改协同服务中的配置;监听程序发现该项配置发生变化,将变化的数据直接加载到应用系统中;
六、最后,在应用系统中使用配置。
[0005]所述步骤一中的配置文件包括读取本地配置文件和远程配置文件两种:当连接不上分布式协同服务时,使用本地配置,否则使用远程配置;当第一次分布式协同服务中没有应用的数据,程序启动的时候自动上传配置,创建完成后,终止上传。
[0006]所述配置管理过程在分布式协同系统中进行,其中步骤五中的集中管理工具即为设置在系统中的ZooKeeper管理工具,该ZooKeeper的数据结构原型为一棵znode树,运行在一组服务器上,提供Watcher机制,使得各客户端与服务器的交互变得松耦合。
[0007]所述分布式协同系统中内置若干服务器,每个服务器在内存中存储一份数据;月艮务启动时,从某个服务器的存储数据中选举一个Leader,该Leader负责处理所有服务器数据更新操作;当且仅当80%服务器在内存中成功修改数据,一个更新操作成功。
[0008]所述分布式协同系统支持步骤一中的配置文件的变量化配置,该变量化配置包括一般属性、公共属性、spring中的数据库配置、log4j日志配置文件的管理。
[0009]本发明的一种分布式集群环境下集中配置分发管理的方法,具有以下优点:
该发明的一种分布式集群环境下集中配置分发管理的方法通过分布式协同服务ZooKeeper与Web应用系统建立一致、稳定、高效、可靠的协调机制,为分布式集群环境下Web应用系统配置提供统一的集中管理,解决分布式系统部署、更新、管理成本高的问题;实用性强,适用范围广泛,易于推广。

【专利附图】

【附图说明】
[0010]附图1为本发明的实现流程图。
[0011]附图2为本发明的分布式集群结构图。

【具体实施方式】
[0012]下面结合附图和具体实施例对本发明作进一步说明。
[0013]本发明提供一种分布式集群环境下集中配置分发管理的方法,如附图1所示,该方法的具体实现过程为:
一、首先加载配置文件;
二、检查分布式协同服务中是否存在该项配置;
三、如果存在,读取协同服务中的配置加载到应用系统中;另监听分布式协同服务中该项配置的变化;
四、如果不存在,将本地配置上传到协同服务并加载到应用系统中;另监听分布式协同服务中该项配置的变化;
五、如果需要修改某项配置,通过集中管理工具修改协同服务中的配置;监听程序发现该项配置发生变化,将变化的数据直接加载到应用系统中;
六、最后,在应用系统中使用配置。
[0014]所述步骤一中的配置文件包括读取本地配置文件和远程配置文件两种:当连接不上分布式协同服务时,使用本地配置,否则使用远程配置;当第一次分布式协同服务中没有应用的数据,程序启动的时候自动上传配置,创建完成后,终止上传。
[0015]所述配置管理过程在分布式协同系统中进行,其中步骤五中的集中管理工具即为设置在系统中的ZooKeeper管理工具,该ZooKeeper的数据结构原型为一棵znode树(类似Linux的文件系统),并且它们是一些已经被构建好的块,可以用来构建大型的协作数据结构和协议;可以运行在一组服务器上,同时它们被设计成高可用性,为你的应用程序避免单点故障;提供的Watcher机制使得各客户端与服务器的交互变得松耦合,每个客户端无需知晓其他客户端的存在,就可以和其他客户端进行数据交互;为开发人员提供了一套丰富的API,减轻了开发人员编写通用协议的负担。
[0016]如附图2所示,其工作原理是:
每个Server在内存中存储了一份数据;
服务启动时,将从实例中选举一个Leader ;
Leader负责处理数据更新等操作;
一个更新操作成功,当且仅当大多数Server在内存中成功修改数据; 该服务为客户端展示同一个视图,客户端可以从任意Server中查询数据。
[0017]分布式集群环境下,利用分布式协同服务ZooKe印er简单、高可用、数据一致性、松耦合、实时性等特点,解决分布式集群环境下文件配置问题,通过ZooK^per管理工具集中管理各应用系统配置,并且可以保证配置修改实时生效。支持配置文件的变量化配置;可以支持读取本地配置文件和远程配置文件两种方式;每个集群环境一个树的节点。
[0018]利用ZooKe印er的特点,解决Web应用系统中配置文件的管理问题,并保证配置修改实时生效。
[0019]支持配置文件的变量化配置,并且支持一般属性、公共属性、spring中的数据库配置、log4j日志配置文件的管理。
[0020]支持读取本地配置文件和远程配置文件两种方式,如果连接不上分布式协同服务,就使用本地配置;如果第一次分布式协同服务中没有应用的数据,程序启动的时候可以自动上传配置,创建完成后,就不再上传。
[0021]每个集群环境一个树的节点,保证配置的唯一性,集成、测试、生产环节不冲突。
[0022]上述【具体实施方式】仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述【具体实施方式】,任何符合本发明的一种分布式集群环境下集中配置分发管理的方法的权利要求书的且任何所属【技术领域】的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。
【权利要求】
1.一种分布式集群环境下集中配置分发管理的方法,其特征在于其具体实现过程为: 一、首先加载配置文件; 二、检查分布式协同服务中是否存在该项配置; 三、如果存在,读取协同服务中的配置加载到应用系统中;另监听分布式协同服务中该项配置的变化; 四、如果不存在,将本地配置上传到协同服务并加载到应用系统中;另监听分布式协同服务中该项配置的变化; 五、如果需要修改某项配置,通过集中管理工具修改协同服务中的配置;监听程序发现该项配置发生变化,将变化的数据直接加载到应用系统中; 六、最后,在应用系统中使用配置。
2.根据权利要求1所述的一种分布式集群环境下集中配置分发管理的方法,其特征在于:所述步骤一中的配置文件包括读取本地配置文件和远程配置文件两种:当连接不上分布式协同服务时,使用本地配置,否则使用远程配置;当第一次分布式协同服务中没有应用的数据,程序启动的时候自动上传配置,创建完成后,终止上传。
3.根据权利要求1所述的一种分布式集群环境下集中配置分发管理的方法,其特征在于:所述配置管理过程在分布式协同系统中进行,其中步骤五中的集中管理工具即为设置在系统中的ZooKeeper管理工具,该ZooKeeper的数据结构原型为一棵znode树,运行在一组服务器上,提供Watcher机制,使得各客户端与服务器的交互变得松耦合。
4.根据权利要求3所述的一种分布式集群环境下集中配置分发管理的方法,其特征在于:所述分布式协同系统中内置若干服务器,每个服务器在内存中存储一份数据;服务启动时,从某个服务器的存储数据中选举一个Leader,该Leader负责处理所有服务器数据更新操作;当且仅当80%服务器在内存中成功修改数据,一个更新操作成功。
5.根据权利要求3所述的一种分布式集群环境下集中配置分发管理的方法,其特征在于:所述分布式协同系统支持步骤一中的配置文件的变量化配置,该变量化配置包括一般属性、公共属性、spring中的数据库配置、log4j日志配置文件的管理。
【文档编号】H04L12/24GK104202383SQ201410424693
【公开日】2014年12月10日 申请日期:2014年8月26日 优先权日:2014年8月26日
【发明者】高传集, 付安龙 申请人:浪潮软件股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1