Azure 应用服务预生产槽应使用哪些设置?

Posted

技术标签:

【中文标题】Azure 应用服务预生产槽应使用哪些设置?【英文标题】:Which settings should Azure App Service pre-production slot use? 【发布时间】:2021-11-21 04:37:52 【问题描述】:

我在 Azure 中有 3 个应用服务槽:

示例名称(生产) 示例名称/主人 示例名称/分期

CI/CD 是这样配置的:

推送到分支“master”部署到“ExampleName/master”槽 推送到分支 'staging' 部署到 'ExampleName/staging' 槽

我在 Azure 文档中阅读了有关部署最佳实践的信息,他们说:

永远不应该为您的生产启用持续部署 投币口。相反,应该部署您的生产分支(通常是主分支) 到非生产槽位。当你准备好释放基地时 分支,将其交换到生产槽中。

我对此很陌生,并且对“ExampleName/master”插槽在交换插槽之前应该使用哪些设置感到困惑?它应该使用生产数据库和其他服务吗?还是应该使用暂存环境中的那些?

由于生产槽中已经运行的应用程序的版本可能与“/master”版本不同,我认为它不应该使用生产槽,但不知道我是否正确。

【问题讨论】:

【参考方案1】:

您应该为生产和非生产工作负载使用不同的应用服务。因为在幕后他们使用相同的资源。因此,对您的非生产插槽进行压力测试可能会导致整个网站宕机。

prhase prodution slot 和 stagind slot 不涉及环境。他们只是说一个插槽是主要的并服务于流量。它用于最大限度地减少停机时间。因此,首先您可以将您的应用程序发布到暂存槽,您可以进行小测试以确保一切正常并交换槽。但这并不是为成为和环境而设计的。

【讨论】:

以上是关于Azure 应用服务预生产槽应使用哪些设置?的主要内容,如果未能解决你的问题,请参考以下文章

将 Azure 移动服务迁移到 Azure 移动应用:UserId 已更改

如何在 Azure Arm 模板中使用粘性暂存槽

开始生产芹菜工人。在 Azure/linux 应用服务上使用 Django/Python

使用单个 Azure 应用服务托管多个应用程序/微服务都有哪些限制/缺点?

将 1 个 VSTS 实例链接到多个 Azure 订阅

本地主机和生产环境的 Azure Active Directory 应用程序注册