The embodiment of the invention discloses a system and a configuration file management method, wherein said method comprises: establish a connection between the nodes in the zookeeper cluster and client; analytic generated configuration file update instructions, to determine the corresponding node in the zookeeper cluster in the configuration file update instructions for the target node the new configuration file; and stored to the target node, and the configuration file backup configuration file to the database of the new changes; when the target node stored in the configuration file after the update is connected with the target node of the client configuration file; when receiving the fault information is connected with the target node client feedback, obtain the corresponding to the target node's history to update the version of the configuration file from the configuration file in the database And update the profile database. The embodiment of the invention realizes the synchronization and version management of the configuration file in the distributed system.
【技术实现步骤摘要】
本专利技术实施例涉及通信
,尤其涉及一种配置文件管理方法及系统。
技术介绍
互联网行业随着硬件成本的下降及用户量的急剧增长,后端所涉及到的服务器数据也明显增长。为了便于管理和维护,大部分程序都会有配置文件,而服务器的增加导致了管理配置文件不再是件容易的事情。之所以把一些数据当成是配置数据,第一个目的是要用一种方式来记录这些数据,因为系统在运行过程中,要用到这些数据。例如,要配置数据库的登录名和密码,如果没有登录名和密码,就无法登录一个数据库。第二个目的,就是因为这些数据需要根据应用场景动态调整具体的数值,例如,http协议中默认使用80端口,但是有的时候80这个端口会被防火墙关闭了,这时候需要能把端口改成别的,例如8080。第三个目的,就是为了更好地管理系统,把这些经常变化或者需要满足定制化的参数统一放到一个文件里或者都放到数据库里,而不是让这些参数散落在源代码的各个位置。这样管理起来就比较方便了,不需要进入到源代码里去改这些参数。例如,Nginx就把配置文件做的非常好,Nginx基本上把所有重要可变化的参数都统一放在了Nginx.conf这个配置文件里,因此只需要修改配置文件,就可以使用Nginx来完成很多功能。但是,专利技术人在实现本专利技术实施例的过程中发现,在服务器有限的情况下,人为管理配置文件是普遍现象。良好的备份习惯也可以保证出错时能及时回滚到正确的版本。随着服务器数量的增加,用这种方式管理100台,甚至1000,10000台服务器是不可能做到的。于是出现了一些管理软件可以用来同步配置文件,在一定程度上使问题得到缓解。但是这些软件不是分 ...
【技术保护点】
一种配置文件管理方法,所述方法应用于一种包括了zookeeper集群的配置文件管理系统,所述方法包括:建立所述zookeeper集群中的节点与客户端之间的通信连接;解析生成的配置文件更新指令,以确定所述zookeeper集群中的对应于所述配置文件更新指令的节点为目标节点;将新的配置文件存储至所述目标节点,并将所述新的配置文件备份至配置文件数据库;当所述目标节点所存储的配置文件发生变化后,更新与所述目标节点相连接的客户端的配置文件;当接收到与所述目标节点相连接的客户端反馈的故障信息后,从所述配置文件数据库中获取对应于所述目标节点的历史配置文件版本以更新所述目标节点,并更新所述配置文件数据库。
【技术特征摘要】
1.一种配置文件管理方法,所述方法应用于一种包括了zookeeper集群的配置文件管理系统,所述方法包括:建立所述zookeeper集群中的节点与客户端之间的通信连接;解析生成的配置文件更新指令,以确定所述zookeeper集群中的对应于所述配置文件更新指令的节点为目标节点;将新的配置文件存储至所述目标节点,并将所述新的配置文件备份至配置文件数据库;当所述目标节点所存储的配置文件发生变化后,更新与所述目标节点相连接的客户端的配置文件;当接收到与所述目标节点相连接的客户端反馈的故障信息后,从所述配置文件数据库中获取对应于所述目标节点的历史配置文件版本以更新所述目标节点,并更新所述配置文件数据库。2.根据权利要求1所述的方法,其中,所述当所述目标节点所存储的配置文件发生变化后,更新与所述目标节点相连接的客户端的配置文件包括:当所述目标节点所存储的配置文件发生变化后,通过心跳数据包通知与所述目标节点相连接的客户端;当接收到与所述目标节点相连接的客户端的配置文件更新请求后,发送新的配置文件至与所述目标节点相连接的客户端。3.根据权利要求2所述的方法,其中,在所述将新的配置文件存储至所述目标节点,并将新的配置文件备份至配置文件数据库之前还包括:校验所述新的配置文件的文件格式。4.根据权利要求1-3任一项所述的方法,其中,还包括:建立所述zookeeper集群中的每一个节点所存储的配置文件与对应的客户端之间的映射关系,以用于客户端根据所述映射关系从相对应的节点获取配置文件。5.根据权利要求4所述的方法,其中,还包括:在客户端中嵌入配置文件代理SDK,以用于当客户端监听到所连接的节点所存储的配置文件的变化时处理所述客户端的配置文件,所述配置文件代理SDK关联配置有对配置文件的处理逻辑。6.一种配置文件管理系统,包括:连接建立模块,用于建立所述zookeeper集群中的节点与客户端之间的通信连接;指令解析模块,用于解析生成的配置文件更新指令,以确定所述zookeeper集群中的对应于所述配置文件更新指令的节点为目标节点;配置文件存储模块,用于将新的配置文件存储至所述目标节点,并将所述新的配置文件备份至配置文件数据库;第一配置文件更新模块,用于当所述目标节点所存储...
【专利技术属性】
技术研发人员:冯丙见,
申请(专利权)人:乐视控股北京有限公司,乐视云计算有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。