分布式部署统一配置和自动适配方法和系统技术方案

技术编号:12388296 阅读:81 留言:0更新日期:2015-11-25 20:58
本公开提供了一种差异化配置项自动加载系统中的配置管理服务端(302),该配置管理服务端(302)包括:配置项集中管理装置(305),被配置为:根据拟部署服务环境关键参数设定部署标识,按该部署标识在中央数据库(307)中维护该配置项;配置项加载与缓存装置(306),被配置为:基于来自服务部署客户端(301)的请求,将与该服务环境关键参数相关联的该配置项加载到服务部署客户端(301)中的集中缓存中。本公开还提供了一种差异化配置项自动加载系统中的服务部署客户端(301)以及在该配置管理服务端(302)处和在该服务部署客户端(301)处的方法以及计算机可读存储介质。

【技术实现步骤摘要】

本公开涉及分布式系统,具体地,本公开涉及一种差异化配置项自动加载的方法和系统。
技术介绍
大型平台中存在多种分布式部署,由于并发量和性能的限制,需要进行服务部署水平扩展和服务分片,此时很多相关服务的配置信息项同时服务于多个服务模块,但只是配置值不同。图1示出了现有技术中基于传统配置文件方式的分布式部署。首先,在步骤S101中,管理员根据服务需要建立不同的配置文件。在部署时修改对应配置文件的内容,如步骤S102所示。在步骤S103中,当服务启动时,不同的部署加载与其相对应的配置文件,以使各部署提供服务。如有配置变更,则停止服务(步骤S106),并回到步骤S102以再次修改配置文件的内容。由此可见,图1中所示的基于传统配置文件方式的分布式部署具有以下缺陷:需要在每个部署服务中都进行属性配置,这使得重复工作量大;当配置变更时,修改变更不方便,且容易出现配置项遗漏或出错;无法集中查看和管理配置项信息;无法做到配置热部署。基于zookeeper的分布式配置管理方式同样是现有技术中常用的分布式部署方式。图2示出了基于zookeeper的分布式配置管理方式的分布式部署。首先管理员在zookeeper中心分配路径,创建对应的节点,并对节点赋值(步骤S201)。然后,在步骤S202中,当部署服务启动后,客户端连接zookeeper,根据节点路径获取相应的节点值并加载配置。然后判断有否存在配置变更(步骤S203)。如有配置变更(步骤S203中是),则在zookeeper中心对配置进行修改,然后zookeeper中心向客户端发节点变更通知(步骤S205)。然而,图2中所示的基于zookeeper的分布式配置管理方式存在以下缺陷:配置数据属性支持性比较单一,很难支持复杂数据结构;配置层级主要基于树形结构,扩展不方便,实现成本较高且权限控制不灵活;对客户端实现语言有限制,主要支持java和c,而其他语言支持有限;查询支持不好,很难实现个性化查询。
技术实现思路
根据对现有技术中的集中分布式部署系统的分析,可以看到现有技术仍存在以下技术问题:对于不同环境中的服务,无法根据运行时环境关键属性来自动识别部署实例;无法针对不同环境,实现差异化配置;当配置项变更时,部署实例无法做到无文件配置改动部署,即无法使分布式服务在部署环境下不做任何变更而实现配置项热加载。具体地,根据本专利技术的第一方面,提供了一种差异化配置项自动加载系统中在配置管理服务端(302)处的配置管理与加载方法,所述方法包括以下步骤:根据拟部署的服务环境关键参数设定部署标识,按所述部署标识在中央数据库(307)中维护所述配置项;基于来自服务部署客户端(301)的请求,将与所述服务环境关键参数相关联的所述配置项加载到服务部署客户端(301)中的集中缓存中。在一个实施例中,所述配置项包括key-value型配置、XML型配置、文本文件、二进制对象。在一个实施例中,所述部署标识包括IP地址和/或部署路径,且所述部署标识唯一地标识一个部署实例。在一个实施例中,维护所述配置项包括:利用操作界面来对配置项进行操作。在一个实施例中,维护所述配置项包括:对数据进行序列化。根据本专利技术的第二方面,提供了一种差异化配置项自动加载系统中在服务部署客户端(301)处的模块识别与配置读取方法,所述方法包括以下步骤:在所述部署启动时,向中央数据库(307)请求与服务环境关键参数相对应的所述配置项,并利用所述配置项启动所述部署;在所述部署的服务过程中,获取配置更新信息,当配置变更后自动加载最新的所述配置项。在一个实施例中,所述配置项包括key-value型配置、XML型配置、文本文件、二进制对象。在一个实施例中,请求与服务环境关键参数相对应的所述配置项包括:查找与服务环境关键参数相对应的部署标识;当找到所述部署标识时,读取与所述部署标识相对应的配置项,以利用所述配置项启动所述部署;在一个实施例中,所述部署标识包括IP地址和/或部署路径,且所述部署标识唯一地标识一个部署实例。在一个实施例中,所述获取配置更新信息包括定时获取更新和/或有条件刷新。在一个实施例中,所述有条件刷新包括:管理端利用刷新接口来触发所述配置项的刷新。在一个实施例中,当配置变更后自动加载最新的所述配置项包括:增量配置项加载和/或全量配置项加载。根据本专利技术的第三方面,提供了一种差异化配置项自动加载系统中的配置管理服务端(302),所述配置管理服务端(302)包括:配置项集中管理装置(305),被配置为:根据拟部署的服务环境关键参数设定部署标识,按所述部署标识在中央数据库(307)中维护所述配置项;配置项加载与缓存装置(306),被配置为:基于来自服务部署客户端(301)的请求,将与所述服务环境关键参数相关联的所述配置项加载到服务部署客户端(301)中的集中缓存中。在一个实施例中,所述配置项包括key-value型配置、XML型配置、文本文件、二进制对象。在一个实施例中,所述部署标识包括IP地址和/或部署路径,且所述部署标识唯一地标识一个部署实例。在一个实施例中,所述配置项集中管理装置(305)还被配置为:利用操作界面来对配置项进行操作。在一个实施例中,所述配置项集中管理装置(305)还被配置为:对数据进行序列化。根据本专利技术的第四方面,提供了一种差异化配置项自动加载系统中的服务部署客户端(301),所述服务部署客户端(301)包括:部署自动识别装置(303),被配置为:在所述部署启动时,向中央数据库(307)请求与服务环境关键参数相对应的所述配置项,并利用所述配置项启动所述部署;配置读取刷新装置(304),被配置为:在所述部署的服务过程中,获取配置更新信息,当配置变更后自动加载最新的所述配置项。在一个实施例中,所述配置项包括key-value型配置、XML型配置、文本文件、二进制对象。在一个实施例中,所述部署自动识别装置(303)还被配置为:查找与服务环境关键参数相对应的部署标识;当找到所述部署标识时,读取与所述部署标识相对应的配置项,以利用所述配置项启动所述部署;在一个实施例中,所述部署标识包括IP地址和/或部署路径,且所述部署标识唯一地标识一个部署实例。在一个实施例中,所述配置读取刷新装置(304)还被配置为:定时本文档来自技高网
...

【技术保护点】
一种差异化配置项自动加载系统中在配置管理服务端(302)处的配置管理与加载方法,所述方法包括以下步骤:根据拟部署的服务环境关键参数设定部署标识,按所述部署标识在中央数据库(307)中维护所述配置项;基于来自服务部署客户端(301)的请求,将与所述服务环境关键参数相关联的所述配置项加载到服务部署客户端(301)中的集中缓存中。

【技术特征摘要】
1.一种差异化配置项自动加载系统中在配置管理服务端(302)处
的配置管理与加载方法,所述方法包括以下步骤:
根据拟部署的服务环境关键参数设定部署标识,按所述部署标识
在中央数据库(307)中维护所述配置项;
基于来自服务部署客户端(301)的请求,将与所述服务环境关键
参数相关联的所述配置项加载到服务部署客户端(301)中的集中缓存
中。
2.根据权利要求1所述的方法,其中,所述配置项包括key-value
型配置、XML型配置、文本文件、二进制对象。
3.根据权利要求1所述的方法,其中,所述部署标识包括IP地址和
/或部署路径,且所述部署标识唯一地标识一个部署实例。
4.根据权利要求1所述的方法,其中,维护所述配置项包括:利用
操作界面来对配置项进行操作。
5.根据权利要求1所述的方法,其中,维护所述配置项包括:对数
据进行序列化。
6.一种差异化配置项自动加载系统中在服务部署客户端(301)处
的模块识别与配置读取方法,所述方法包括以下步骤:
在所述部署启动时,向中央数据库(307)请求与服务环境关键参
数相对应的所述配置项,并利用所述配置项启动所述部署;
在所述部署的服务过程中,获取配置更新信息,当配置变更后自
动加载最新的所述配置项。
7.根据权利要求6所述的方法,其中,所述配置项包括key-value
型配置、XML型配置、文本文件、二进制对象。
8.根据权利要求6所述的方法,其中,请求与服务环境关键参数相
对应的所述配置项包括:查找与服务环境关键参数相对应的部署标识;
当找到所述部署标识时,读取与所述部署标识相对应的配置项,以利
用所述配置项启动所述部署;
9.根据权利要求6所述的方法,其中,所述部署标识包括IP地址和

\t/或部署路径,且所述部署标识唯一地标识一个部署实例。
10.根据权利要求6所述的方法,其中,所述获取配置更新信息包
括定时获取更新和/或有条件刷新。
11.根据权利要求10所述的方法,其中,所述有条件刷新包括:管
理端利用刷新接口来触发所述配置项的刷新。
12.根据权利要求6所述的方法,其中,当配置变更后自动加载最
新的所述配置项包括:增量配置项加载和/或全量配置项加载。
13.一种差异化配置项自动加载系统中的配置管理服务端(302),
所述配置管理服务端(302)包括:
配置项集中管理装置(305),被配置为:根据拟部署的服务环境
关键参数设定部署标识,按所述部署标识在中央数据库(307)中维护
所述配置项;
配置项加载与缓存装置(306),被配置为:基于来自服务部署客
户端(301)的请求,将与所述服务环境关键参数相关联的所述配置项
加载到服务部署客户端(301)中的集中缓存中。

【专利技术属性】
技术研发人员:薛宏
申请(专利权)人:北京京东尚科信息技术有限公司北京京东世纪贸易有限公司
类型:发明
国别省市:北京;11

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

1