中央配置系统

时间:2012-08-08 19:50:33

标签: c# java configuration cloud

如果您正在构建基于云的大型平台,那么您将在该平台中拥有许多不同的模块/组件。其范围从Web服务配置(地址,端口,...)到您拥有的每个组件的域特定配置。可以通过为系统中的每个组件提供一个tockenized配置文件来配置这样的系统,然后为整个平台提供一个大的tocken解析文件。这很快就会变得混乱!

我当时认为可能是将整个平台配置集中到Web服务中的更好方法,作为平台的中央配置系统,然后系统中的每个组件都来到此Web服务并通过提供其ID来请求其配置设置或唯一的配置名称。

我甚至认为这样的配置必须是类型安全的,以便所有系统组件明确地参考其所需的配置与键值方式方法。

这个中央配置系统的另一个重要特性应该是能够使配置值依赖于服务器端,以便我能够说

component1Config.LogServiceAddress = someMasterConfig.Address;

在服务器端。因此,只有中央配置系统知道上述逻辑,而component1只是获取其LogServiceAddress的值,而不知道中央配置系统如何解决该问题。

我的问题是,这样的中央配置系统是否已经存在?有没有提供这种中央配置系统功能的开源软件?

2 个答案:

答案 0 :(得分:1)

Chef / Puppet是集中在各种机器上配置多个堆栈的标准方法。中央服务器可以启动远程节点,然后在该计算机上推送所需的堆栈。虽然我已经看到使用相同的软件供应,但我认为它可以扩展到满足您的需求!

答案 1 :(得分:0)

WCF Discovery Overview

提供服务,当服务宣布时,它会添加到服务列表中。使用元数据来提供配置设置等。

公平地说,还有Mono.Zeroconf需要bonjour(苹果)。