我有一个产品和一个人们可以购买产品的前端网站。购买后,我有一个系统在我的DNS服务器上创建一个指向IP地址的A记录。然后它创建一个具有所需绑定的新IIS网站。处理多个应用程序的部署ASP.NET
所有这一切都很好,但我现在正在考虑发展业务,为此我需要处理应用程序的升级。
目前,我有我的应用程序运行40个网站。这是所有相同的代码库,每个网站使用它自己的SQL Server数据库。每个网站都运行在一个单独的应用程序池中,并完全独立运行。
我已经着眼于使用TeamCity来构建应用程序,然后有一个手动步骤为每个网站运行MSDeploy,但这不是特别理想,因为我需要a)购买完整许可证和b)总是记得在TeamCity构建中添加一个新网站。
如何处理运行许多不同网站和单独SQL Server数据库的相同代码库的升级和部署?
我很想转移到一个真正的多租户环境,但每个网站都使用它自己的缓存策略(取决于客户端),使用唯一的SQL Server数据库和整个堆的安装设置。把所有东西都合并为一个真正的多租户环境,不幸的是需要重新写入。也许我可以使用团队城市部署到一个位置,然后有一个自定义应用程序来部署到每个站点......我认为无论我做什么都会是一大堆乐趣! – Paul 2015-02-12 00:55:00
@保罗我确实感到你的痛苦伴侣。我讨厌这样说,但这听起来像是从一开始就做出错误决定的结果。我仍然强烈建议你看看多租户,它不一定涉及完整的重写,只处理客户端数据处理与客户端上下文无关的数据。有一个每客户端缓存策略,它不是一个显示限制器,你可以在运行时使用IoC/DI模式简单地加载一个基于当前上下文的特定缓存组件。有几个第三paty工具在那里为此目的,如温莎城堡IoC – Leo 2015-02-12 01:41:49
感谢您输入狮子座,欣赏它。 – Paul 2015-02-18 00:20:57