统一通用配置引擎

随着运营的系统越来越多,开源的、自行开发的,C的、python的、J2EE的、php的等等,其配置也是五花八门,各不相同,系统运营的工作显著增加。

手工运营这样的体系,不仅增加了非常多复杂重复的工作,可能还需要详尽的文档支撑。系统分布式后,更是显著增加了这个工作的复杂度。同时,随着业务需求的快速变化、系统的更新与环境的变更(如机器ip变化等),这样的重复性工作更是琐碎而量大,因此一个通用的解决访问在大规模部署的系统里显得十分迫切。

如果对某个系统来开发完善的维护平台(比如统一存储、web界面管理等),又不具有通用性。不知道有没有这方面的开源项目,望大家指点下。

大致的需要是这样的:

1、要基于一种集中式的配置,分布似乎的读取方式,便于配置内容的维护和备份;

2、配置中心和单个配置读取节点间与平台无关、语言无关;

3、配置中心应该支持常规的如java properties的key =>  value配置格式,同时还应支持大规模专用数据库类配置(比如地区码、ip地址库等),其客户端API应该对这类常规应用进行封装;

4、中心与节点间应该存在热更新的机制,以便在系统运行期间可以把更改的配置“推”到各应用点;

5、客户端侧的API应该支持配置刷新后的event通知,以便主程序做必要的刷新(比如线程数量的配置等);

6、统一的web控制界面,可以基于web修改任何配置,并设置刷新机制(立即、还是等待系统重启、或者是某个时间点);

7、对各配置项修改应该具备一定的版本备份能力,在错误配置的情况下,可以进行系统恢复。

大家看看是否要求过分,有没有现有的项目可以拿来使用或改造。

有想法的兄弟姐妹也可以出出主意,一起探讨探讨。

猜你喜欢

转载自liukl.iteye.com/blog/169985