我的目标是编写一个为许多数据库运行一次的ASP.NET MVC应用程序。
除此之外的想法是我计划将客户端/服务器应用程序转换为Web应用程序,因此我期望的最大流量(和资源消耗)是从应用程序到数据库而不是应用程序本身(否) “科学计算”)或从应用程序到客户。
我想要实现的一件事是在IIS上安装一台托管应用程序的服务器,但在下面我想连接多个数据库(linux服务器上的postgresql数据库)。
因此部署方案将是:
SERVER1(Main) - Windows - 托管iis +“10”postgresql dbs
SERVER2- Linux - “20”postgresql db
SERVER3ToN- Linux - “20”postgresql db
(我写“10”和“20”只是为了让更多dbs“可以”托管在“空闲服务器”上)
此外,我希望每个数据库都可以从不同的URL访问:
localhost:8080
或customer1.myapp.com
使应用在[{1}}上的DB1
上工作
SERVER1
或localhost:8092
使应用在[{1}}上的customer12.myapp.com
上工作
这当然是很好的托管应用程序,它不是超级可扩展(意味着一旦应用程序占用完整的CPU我将需要在另一台机器上再安装一个实例,但要添加1个以上的数据库我只需要在支持的dbs列表中添加一个db),但足以满足我的需求。它还允许在需要时安装在本地。
我的问题是:“是否存在实现这一目标的现有模式,或者必须从头开始编写?”欢迎任何帮助!
用现有模式表达自己的意思是:
1)现有的演示应用
2)在某些网络链接上写的最佳做法
3)我不知道的asp.net mvc功能
当然我可以从头开始编写它(例如,通过从配置文件中读取支持的dbs列表并进行所有必要的安排)但在尝试之前我想从StackOverflow社区获得提示。