C# 如何在多台服务器之间共享应用程序设置

C# 如何在多台服务器之间共享应用程序设置,c#,.net,settings,config,C#,.net,Settings,Config,我有2个Web服务器和3个应用服务器,其中包含多个应用程序。 我希望能够有一个这样的系统,所有服务器的应用程序都可以访问公共的基本设置—db连接字符串、公共文件服务器共享、smtp服务器等等 我能找到的唯一建议是将所有设置放在数据库中,但接下来我需要将连接字符串放在每台服务器的machine.config中。 我试图将文件放在域控制器上,并编写代码以显示控制器名称,但即使在模拟受信任的用户后,我也无法读取该文件。我们这样做的方式是通过中央应用程序服务器(我们称之为业务层) 连接的应用程序只需要配

我有2个Web服务器和3个应用服务器,其中包含多个应用程序。 我希望能够有一个这样的系统,所有服务器的应用程序都可以访问公共的基本设置—db连接字符串、公共文件服务器共享、smtp服务器等等

我能找到的唯一建议是将所有设置放在数据库中,但接下来我需要将连接字符串放在每台服务器的machine.config中。
我试图将文件放在域控制器上,并编写代码以显示控制器名称,但即使在模拟受信任的用户后,我也无法读取该文件。

我们这样做的方式是通过中央应用程序服务器(我们称之为业务层)

连接的应用程序只需要配置中央服务器的地址,然后它们就可以从中央服务器检索它们需要的所有设置(通过远程处理、web服务、wcf或您喜欢的任何方式)

更新

想到的唯一其他选项是使用WS-Discovery发送多播请求,以查找提供信息的WCF服务


快速入门指南。

我知道业务层是什么。不过,根据您的建议,每个应用程序都应该至少配置一个设置—到远程服务器的ip或url。这是我试图避免的事情。即使将此url放在machine.config中也无济于事-我有5个web/应用程序服务器+许多带有.net应用程序的工作站。我不想每一个都配置。底线是你必须配置每一个应用程序,这样他们至少知道从哪里获得配置。好处是您可以将所有配置保存在一个位置,以便更容易维护,当然每个应用程序上的小配置都是值得的?唯一想到的另一个选项是多播UDP请求。幸运的是,.NET4.0中的WCF实现了这一点。我已经用这些信息更新了答案。