1

我很想知道这是否可行,如果可以,这是个好主意还是坏主意?

我们正在开发一个 Azure 应用程序,该应用程序主要以工作人员角色为中心,这些工作人员角色在 CloudQueue 上接收他们的工作,并将结果放入 CloudBlob,然后客户端下载该应用程序。Web 界面本身是一个非常简单的 ASP.NET MVC 站点,它在 CloudQueue 中抛出作业,并构建 URL 以下载 CloudBlob。

目前,我们通过在我们的解决方案中拥有一个 Azure 云项目来实现这一点,该项目有一个带有 UI 的 Web 角色,以及带有实际工作的 Worker 角色。

我们可以使用 Azure 网站来发布和托管 UI,它会回调我们的 Worker Roles 吗?Azure DLL 只是普通的旧 .NET 库,我假设 Azure 网站不会对它们有任何问题。因此,当我们想要更新 UI 时,我们只需使用 Visual Studio 发布即可。当我们想要更新 Worker 角色(300MB+ 并且有一堆像 Crystal Reports 之类的讨厌的依赖项)时,我们可以构建云捆绑包并通过 Azure 管理门户更新云服务。

在我看来,这样做会更容易更新 UI。我认为托管它也会更便宜,因为我们不必为 Web 角色购买一堆实例。

4

1 回答 1

1

如果您的问题是“我们可以使用 Windows Azure 网站*”,那么根据您的应用程序架构,您肯定可以使用 Azure 网站来部署您的前端并正确配置所有网络连接,以便您可以继续访问其他 Azure 存储服务。由于您主要使用 Blob 和队列,因此您可以继续在 Azure 网站中使用 HTTP/HTTPS 设置。您可以按原样保留辅助角色,但是如果部署非常复杂,则使用 Windows Azure VM 可能是另一个方向。

我可以说,如果您的 Web 应用程序没有在 Web 服务器中配置复杂的东西,那么网站部署可能会更容易,因为与 webrole 和 Azure VM 相比,网站可能无法匹配 Web 服务器级别的配置。回答“更简单、更便宜”可能非常主观,因为这完全取决于负载和分布,因此您必须尝试评估它。

于 2012-08-30T17:12:24.797 回答