一种系统参数统一配置实时生效的方法及系统技术方案

技术编号:28558216 阅读:21 留言:0更新日期:2021-05-25 17:52
本发明专利技术涉及一种系统参数统一配置实时生效的方法及系统。该方法基于java客户端,通过配置文件变更事件触发监听事件去动态实时变更Spring容器实例注入属性值的变更,通过监听获取变更属性值需要变更的Spring容器里的单例Bean,触发Spring实例工厂重新生成Bean实例实现属性值的刷新。

【技术实现步骤摘要】
一种系统参数统一配置实时生效的方法及系统
本专利技术涉及一种系统参数统一配置实时生效的方法及系统。
技术介绍
随着程序功能的日益复杂,程序的配置日益增多:各种功能的开关、参数的配置、服务器的地址等,对程序配置的期望值也越来越高:配置修改后实时生效,灰度发布,分环境、分集群管理配置,完善的权限、审核机制等。在这样的大环境下,传统的通过配置文件、数据库等方式已经越来越无法满足开发人员对配置管理的需求。于是统一配置平台就成为项目运维管理必不可缺少的重要组成部分。
技术实现思路
本专利技术的目的在于提供一种系统参数统一配置实时生效的方法及系统,该方法基于java客户端,通过配置文件变更事件触发监听事件去动态实时变更Spring容器实例注入属性值的变更,通过监听获取变更属性值需要变更的Spring容器里的单例Bean,触发Spring实例工厂重新生成Bean实例实现属性值的刷新。为实现上述目的,本专利技术的技术方案是:一种系统参数统一配置实时生效的方法,包括如下步骤:步骤S1、配置的创建:S11、在管理平台通过界面创建key-value形式的配置;S12、在管理平台对配置进行发布生效;步骤S2、配置变更通知:S21、服务中心将变更数据写入zk,触发zk节点事件;S22、属性值变更触发java客户端zk事件监听,处理属性变更逻辑判断统一配置管理平台指定环境的配置是否有变更,有变更触发属性值变更处理的逻辑代码;S23、自定义RefreshScope存储属性名关联的SpringBean工厂实例;S24、将自定义的RefreshScope注册到Spring;S25、获取需要刷新的Spring容器关联的实例Bean,触发Spring的BeanFactory重新实例化Bean。本专利技术还提供了一种系统参数统一配置实时生效的系统,包括存储器、处理器以及存储于存储器上并能够被处理器运行的计算机程序指令,当处理器运行该计算机程序指令时,能够实现如上述所述的方法步骤。相较于现有技术,本专利技术具有以下有益效果:本专利技术基于java客户端,通过配置文件变更事件触发监听事件去动态实时变更Spring容器实例注入属性值的变更,通过监听获取变更属性值需要变更的Spring容器里的单例Bean,触发Spring实例工厂重新生成Bean实例实现属性值的刷新。附图说明图1为本专利技术方法流程图。图2为本专利技术配置创建界面示意图。图3为本专利技术发布配置界面示意图。图4为本专利技术Java客户端监听变更事件代码示意。图5为本专利技术自定义RefereshScope代码示意。图6为本专利技术将自定义的RefreshScope注册到Spring代码示意。图7为本专利技术属性值变更逻辑处理代码示意。具体实施方式下面结合附图,对本专利技术的技术方案进行具体说明。应该指出,以下详细说明都是示例性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属
的普通技术人员通常理解的相同含义。需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。如图1所示,本专利技术提供了一种系统参数统一配置实时生效的方法,包括如下步骤:步骤S1、配置的创建:S11、在管理平台通过界面创建key-value形式的配置;S12、在管理平台对配置进行发布生效;步骤S2、配置变更通知:S21、服务中心将变更数据写入zk,触发zk节点事件;S22、属性值变更触发java客户端zk事件监听,处理属性变更逻辑判断统一配置管理平台指定环境的配置是否有变更,有变更触发属性值变更处理的逻辑代码;S23、自定义RefreshScope存储属性名关联的SpringBean工厂实例;S24、将自定义的RefreshScope注册到Spring;S25、获取需要刷新的Spring容器关联的实例Bean,触发Spring的BeanFactory重新实例化Bean。本专利技术还提供了一种系统参数统一配置实时生效的系统,包括存储器、处理器以及存储于存储器上并能够被处理器运行的计算机程序指令,当处理器运行该计算机程序指令时,能够实现如上述所述的方法步骤。具体的本专利技术一种系统参数统一配置实时生效的方法,包括以下步骤:步骤1,配置的创建。具体做法:(1)创建配置。在管理平台通过界面创建key-value形式的配置,如图2所示;(2)发布生效。在管理平台对配置进行发布生效,如图3所示;步骤2,配置变更通知。具体做法是:(1)Java客户端监听变更事件服务中心将变更数据写入zk,触发zk节点事件。(2)Java客户端监听变更事件属性值变更触发java客户端ZK事件监听,处理属性变更逻辑判断统一配置平台指定环境的配置是否有变更,有变更触发属性值变更处理的逻辑代码。(3)自定义RefereshScope自定义RefreshScope存储属性名关联的SpringBean工厂实例。(4)将自定义的RefreshScope注册到Spring(5)属性值变更逻辑处理获取需要刷新的Spring容器关联的实例Bean,触发Spring的BeanFactory重新实例化Bean.本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指本文档来自技高网
...

【技术保护点】
1.一种系统参数统一配置实时生效的方法,其特征在于,包括如下步骤:/n步骤S1、配置的创建:/nS11、在管理平台通过界面创建key-value形式的配置;/nS12、在管理平台对配置进行发布生效;/n步骤S2、配置变更通知:/nS21、服务中心将变更数据写入zk,触发zk节点事件;/nS22、属性值变更触发java客户端zk事件监听,处理属性变更逻辑判断统一配置管理平台指定环境的配置是否有变更,有变更触发属性值变更处理的逻辑代码;/nS23、自定义RefreshScope存储属性名关联的Spring Bean工厂实例;/nS24、将自定义的RefreshScope注册到Spring;/nS25、获取需要刷新的Spring容器关联的实例Bean,触发Spring的BeanFactory重新实例化Bean。/n

【技术特征摘要】
1.一种系统参数统一配置实时生效的方法,其特征在于,包括如下步骤:
步骤S1、配置的创建:
S11、在管理平台通过界面创建key-value形式的配置;
S12、在管理平台对配置进行发布生效;
步骤S2、配置变更通知:
S21、服务中心将变更数据写入zk,触发zk节点事件;
S22、属性值变更触发java客户端zk事件监听,处理属性变更逻辑判断统一配置管理平台指定环境的配置是否有变更,有变更触发属性值变更处理的逻辑代码;
S23、自定义...

【专利技术属性】
技术研发人员:吴志雄赖清鑫黄种伟
申请(专利权)人:南威软件股份有限公司福建南威软件有限公司
类型:发明
国别省市:福建;35

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

1