【问题标题】:Azure Web Sites - multiple versioned deploymentsAzure 网站 - 多版本部署
【发布时间】:2015-07-31 00:55:33
【问题描述】:

我们有多个客户端,我们使用 Azure 网站来托管我们的 Web 应用程序。当我们将客户端升级到更新版本的软件时,我们必须将所有客户端升级到最新版本。

我们希望在发布新版本时能够升级一部分客户端。这将使我们能够在将所有客户带到新版本之前测试新解决方案是否正常工作。我们希望为选定的客户提供测试版选项,以便他们可以访问我们软件的新功能,并且知道他们使用的版本仍处于“测试版”模式。

当我们部署一个新版本时,我们希望为这个新版本创建一个网站,同时让其他客户端使用更稳定的先前版本。为此,我们正在考虑编写一个反向代理,根据客户端将流量引导到不同版本的网站。

我们能否使用同一个 Azure 网站托管多个版本的网站。 (IIS 目录)我阅读的与此相关的文档没有提到能够基于不同的代码库构建网站的多个版本。

有没有办法设置构建,以便将每个新版本部署到同一 Azure 网站上的目录中,这样我们就可以在同一 Azure 网站下有效地托管我们应用的多个版本?

我们可以对新的 Azure 网站进行每个版本的构建,但这可能会变得非常昂贵,因为我们运行两个实例以维持良好的 SLA。我们最终可以同时在野外拥有 10 个版本是可行的,运行 20 个 Azure 网站来支持这些版本可能会变得很昂贵。我们如何才能节省成本并为客户提供良好的体验?

【问题讨论】:

  • 嗨,你最后是怎么解决的?我有一个类似的问题,但不是关于 azure,尤其是 stackoverflow.com/questions/68268420/…
  • @Qiulang 使用 Azure FrontDoor,您可以为客户提供一个不同的站点来使用,该站点的工作方式很差。真正要使其正常工作,您需要一个基于登录名或标头引导请求的代理。 Azure Service Fabric 在这种情况下可能会很好地工作。
  • 谢谢 我也在考虑添加代理,因为我的问题是客户这次可能想要最新版本,但下次想要稳定版本。

标签: asp.net azure iis azure-web-app-service


【解决方案1】:

您最多可以有 5 个部署槽,包括在 Azure Web 应用上的生产。每个插槽都可以使用源代码控制系统的不同分支,例如 git 或 tfs。如果您使用这两者中的任何一个,部署也是自动的(持续部署),您可以随时快速交换插槽,并且将停机时间降至最低。每个插槽都有自己的 url 用于外部访问。

为了节省成本,您可以在同一个托管计划上运行多个网络应用程序。在同一托管计划上运行的 Web 应用程序的数量没有限制。对于每个托管计划,可以有 10 个小型/中型/大型实例。

在 Azure 应用服务中为 Web 应用设置暂存环境

https://azure.microsoft.com/en-us/documentation/articles/web-sites-staged-publishing/

Azure 应用服务计划深入概述

https://azure.microsoft.com/en-us/documentation/articles/azure-web-sites-web-hosting-plans-in-depth-overview/

【讨论】:

  • 我们目前使用多个部署槽。据我了解,部署槽是您将构建部署到的地方。部署构建后,您将插槽交换为现在的生产插槽。所以你是说我可以使用这 5 个插槽来拥有 5 个不同的网站?
  • 从您提到的文章中,我注意到它有以下警告:“扩展不适用于非生产槽。” - 这将使我们的解决方案无效。我想我需要将多个网站部署到 IIS 下的不同目录,因为这样整个 IIS 就会扩展。
  • 我明白了。我知道云服务可以实现您想要的,但我不确定网络应用程序。最后,一切都在IIS上运行,或许有可能。
【解决方案2】:

是的,这是可能的。在管理门户中,您需要在网站配置中配置 IIS 虚拟目录或应用程序的详细信息。 参考 - http://blogs.msdn.com/b/tomholl/archive/2014/09/22/deploying-multiple-virtual-directories-to-a-single-azure-website.aspx

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-28
    • 1970-01-01
    相关资源
    最近更新 更多