gpt4 book ai didi

asp.net-mvc-3 - 从 Azure 中的辅助角色部署 Web 角色

转载 作者:行者123 更新时间:2023-12-02 18:46:33 27 4
gpt4 key购买 nike

我正在研究一些 Windows Azure 的东西,以便决定是否迁移到 Azure。

基本信息
要回答这个问题,您需要对我的应用程序有一些基本的了解,所以这里是。

该应用程序是一个连接到 SQL Server 数据库的 ASP.NET MVC 3 应用程序。

它是一个单实例应用程序,这意味着每个客户最终都会在我们的服务器上运行自己的应用程序实例,并作为网站部署到 IIS 7。

我有一个 SQL Server,其中每个实例都有自己的数据库。

我还有一组 Windows 服务来进行一些后台处理。这应该很简单,因为我将重写它们以使用 Windows Azure 中的辅助角色 - 服务中的大多数逻辑无论如何都位于它们自己的类(库)中,因此服务本身只调用一个或多个类中的方法。

现在回答问题
每当有人注册免费试用时,我都会向我拥有的管理数据库添加一条记录。

然后,我有一个 Windows 服务,它将 ASP.NET MVC 3 应用程序的新实例部署到 IIS,授予对几个文件夹的权限,运行数据库部署脚本并更新记录以反射(reflect)它现已部署,最后向潜在客户发送一封电子邮件,告知他们的免费试用已创建 - 以下是访问它的方法。

那么,如何通过辅助角色在 Windows Azure 中部署新实例?我最好只是将一个新网站添加到现有的 Azure 实例,并为该特定网站创建一个新的 SQL Azure 数据库以供使用。

这需要做很多工作来设置吗?这可能吗?

最佳答案

根据两个引用,我建议将其称为 Multi-Tenancy 应用程序:

It is a single instance application, meaning that every customer eventually has their own instance of the app running on our server,

还有...

a Windows Service that deploys a new instance of the ASP.NET MVC 3 app to IIS, grants permission to a few folders

如果我理解正确的话,有“一个”IIS 服务器(在 Windows Azure 中,它是一个 Web 角色,可扩展到多个实例),并且对于每个新的“租户”,您可以设置一些新的东西来支持它租户。

如果确实如此,您绝对可以从 worker 角色中做到这一点 - 只需看看 Nate Totten 的 multi-tenant web role blog帖子和相关代码。查看实际操作 IIS 的 webdeploy 代码。

进一步:看看Cloud Ninja ,我的几个队友与 Fullscale180 一起发布的项目。这是一个 Multi-Tenancy 应用程序,演示如何在单个部署中管理多个客户以及监控和扩展。

最后:如果您需要实际创建全新的服务主机和存储帐户,请参阅 Windows Azure Management API 的最新更新。支持这一点。我希望这会有所帮助...

关于asp.net-mvc-3 - 从 Azure 中的辅助角色部署 Web 角色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6387901/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com