Azure 网站部署非常缓慢

Azure Web Site deployment very slow

我有一个由我们的 GitLab 服务器自动部署的 Azure 网站。与我们使用相同脚本部署的其他项目相比,这个部署需要很长时间(15-20 分钟)。其他项目通常在 1-2 分钟内部署完毕。 (假设修改量大致相同。)

花费最多时间的步骤是Handling Basic Web Site deployment。所有其他步骤都在几秒钟内完成。

git push 到 Azure 后的日志如下所示(我添加的来自 SCM 站点的时间戳):

[2016-08-25T07:42:15.6465159Z] remote: Updating branch 'master'.
[2016-08-25T07:42:18.2159075Z] remote: Updating submodules.
[2016-08-25T07:42:18.2783580Z] remote: Preparing deployment for commit id '2a71d1ddd3'.
[2016-08-25T07:42:18.6221285Z] remote: Generating deployment script.
[2016-08-25T07:42:18.7658033Z] remote: Running deployment command...
[2016-08-25T07:42:19.8283917Z] remote: Handling Basic Web Site deployment.
[                            ] remote: ..... [1051 dots here]
[2016-08-25T08:00:12.4710682Z] remote: KuduSync.NET from: 'D:\home\site\repository' to: 'D:\home\site\wwwroot'
[2016-08-25T08:00:12.5492017Z] remote: Copying file: '[first file]'
[2016-08-25T08:00:12.7054553Z] remote: Copying file: '[last file]'
[2016-08-25T08:00:12.7210814Z] remote: Finished successfully.
[2016-08-25T08:00:12.8492401Z] remote: Running post deployment command(s)...
[2016-08-25T08:00:13.0805168Z] remote: Deployment successful.

我不知道是什么导致了如此巨大的延迟。此外,延迟永远不会相同,会相差几分钟。

由于我不知道哪些信息是重要的,我不能post 所有关于我们的项目或Azure网站的信息,请索取你需要什么帮助我,我会编辑我的问题以提供必要的信息。

问题的根源在于您的 D:\home\site\wwwroot\app_data 文件夹下有大量文件。好像有几十万!

它们的名字类似于 error-2015-02-22235701Z-2ab04577-57f6-43cb-b09a-cc71e354e2f2.xml。很多都非常老了,要追溯到2014年了。

鉴于您可能不需要这些文件,请尝试以下操作:

  • 在 Kudu 控制台中,转到 D:\home\site\wwwroot。不要尝试进入 App_Data,因为文件数量会导致它挂起。
  • 运行 del App_Data\error*.xml

预计需要很长时间!检查它是否取得进展的一种方法是打开另一个 Kudu 控制台实例(在另一个选项卡中),转到 D:\home 和 运行 dir,它告诉你有多少 space 离开了。那应该会上升。

显然,您首先需要调查导致创建这些文件的原因,这样它就不会一直发生。