【问题标题】:Azure App Service - Slot swapping files get lockedAzure 应用服务 - 插槽交换文件被锁定
【发布时间】:2017-09-08 13:01:54
【问题描述】:

当服务有活动流量时会发生错误 1. 部署 o staging 2. 用 prod 交换插槽 3.申请返回502

日志显示

Microsoft.AspNetCore.DataProtection.Abstractions,Version=1.1.2.0,Culture=neutral,PublicKeyToken=adb9793829ddae60' 或其依赖项之一。该进程无法访问该文件,因为它正被另一个进程使用。 (HRESULT 异常:0x80070020)

错误信息不一致,可能是Swagger DLL被锁定或System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler。

最大的问题是。插槽是否共享相同的文件?究竟是如何工作的?我假设每个插槽都是一个单独的 App 。

【问题讨论】:

  • 从字面上看,它应该在旧应用程序和当前部署的应用程序之间交换端点。插槽的概念是现代应用程序开发中的垃圾。除此之外,Azure 在使用它们时更加痛苦。
  • 我有一个短期解决方案。添加了额外的应用程序重启,由于某种原因,带有选项“部署到插槽”和“使应用程序脱机”的“Azure 应用程序服务部署”并不能很好地工作。我们的下一个重要步骤是使用服务结构,所以我想问题会消失。
  • 对我来说,上传文件(通过 zip 部署)和交换插槽(以及此错误)之间经过 5 分钟。是啊,这是怎么回事?

标签: azure azure-web-app-service


【解决方案1】:

其他人可能会感兴趣,但我在交换后添加了一行来重新启动网络应用程序(生产槽)。

az webapp restart -g ResourceGroupName -n AppServiceName

【讨论】:

  • 服务结构在 5 年前对其进行了排序。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-02
  • 2023-04-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-28
相关资源
最近更新 更多