现在,我再次面临这样的问题:即使通过 KUDU 的 zip 部署返回成功后,旧代码仍在 Azure Function App 上使用。
当然,我预计新代码会在大约 30 分钟后加载,而不是立即加载。
The issue被标记为关闭。
在这种情况下,最佳实践是什么:
- 以编程方式强制 Function App 重新启动(例如通过 Azure CLI 或 Powershell Az 模块)?
- 或者还有其他方法可以缓解该问题?
最佳答案
虽然重新启动应该可以修复它,但我的建议是启用“从包运行”:https://learn.microsoft.com/en-us/azure/azure-functions/run-functions-from-deployment-package 。这消除了旧文件运行的机会,因为部署是原子的。
您可以将应用设置 WEBSITE_RUN_FROM_PACKAGE
设置为 1
并继续按照当前的方式进行部署。该网站将直接从该包运行(wwwroot 在 kudu 中将显示为只读),因此无需解压缩和复制,这可能会导致您遇到的问题。
注意:我们似乎仍在跟踪此问题:https://github.com/Azure/azure-functions-host/issues/2636 .
关于Azure函数: Old code still running after a deployment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54555159/