【发布时间】:2011-09-17 06:58:23
【问题描述】:
我正在研究一些 Windows Azure 的东西,以便决定是否迁移到 Azure。
基本信息
要回答这个问题,您需要对我的应用有一些基本的了解。
该应用程序是一个连接到 SQL Server 数据库的 ASP.NET MVC 3 应用程序。
这是一个单实例应用程序,这意味着每个客户最终都会在我们的服务器上运行他们自己的应用程序实例,并将其作为网站部署到 IIS 7。
我有一个 SQL Server,每个实例都有自己的数据库。
我还有一组 Windows 服务来做一些后台处理。这应该是直截了当的,因为我将重写那些以在 Windows Azure 中使用 Worker 角色 - 服务中的大部分逻辑无论如何都位于它们自己的类(库)中,所以它自己的服务只调用一个或多个类中的方法。
现在回答问题
每当有人注册免费试用时,我都会将一条记录添加到我拥有的管理数据库中。
然后我有一个 Windows 服务,它将 ASP.NET MVC 3 应用程序的新实例部署到 IIS,授予一些文件夹的权限,运行数据库部署脚本并更新记录以反映它现在已部署,最后向潜在客户发送一封电子邮件,说明他们的免费试用版已创建 - 这是您访问它的方式。
那么,我如何通过工作角色在 Windows Azure 中部署新实例?最好是向现有 Azure 实例添加一个新网站,并为该特定网站创建一个新的 SQL Azure 数据库以供使用。
这需要大量的工作来设置吗?有没有可能?
【问题讨论】:
-
技术方面不应该太难设置多租户 Web 角色。您需要注意的是数据库结构 - 在常规 SQL 服务器上,空数据库不使用任何资源,因此基本上是免费的。使用 SQL Azure,它被视为一个完整的 1GB 数据库,每月花费 10 美元。
标签: asp.net-mvc-3 azure azure-worker-roles azure-web-roles