27

我有一个 Azure 应用服务,其中包含 1 个带有 1 个插槽的 Web 应用。我有 2 个实例分配给应用服务。本周,应用服务显示大约 60% 的 CPU 使用率,通常在 10-15% 左右。经过进一步调查,看起来两个实例中的 1 个实例已被最大化。打开每个实例的站点指标时,我可以看到一个实例的 HTTP 响应时间在 1000 毫秒内,而另一个实例则不到 200 毫秒。我已经尝试在有问题的实例上重新启动 W3P 进程,但这似乎没有帮助。我也尝试过扩展到其他实例。新实例看起来不错,但是当我缩小规模时,结构不会杀死有问题的实例。

如何强制结构控制器终止特定实例?

我在这里找到了 AzureRestartRole powershell 命令(https://msdn.microsoft.com/en-us/library/azure/dn495202.aspx),但我的 Azure Powershell 命令提示符似乎无法识别该命令,所以我尝试升级使用 install-module 命令到 Azure SDK 1.3,但找不到“AzureRestartRole”命令。

4

3 回答 3

46

我最近遇到了一个类似的问题(一个坏实例总是读取 nullConfigurationManager.AppSettings而另一个实例很好)。我发现从 Azure 门户重新启动 Azure 应用服务(Web 应用)的特定实例是可行的。:D

2019 年 8 月 16 日更新:

简短的版本是,如果您在“诊断和解决问题”下进入 Web 应用程序的门户,搜索“高级应用程序重新启动” ,您将获得一个选项,允许您只选择您想要的实例。

希望有帮助。

于 2017-08-15T01:34:15.277 回答
3

您提到的命令行开关不应该与 Azure 应用服务一起使用,而是与 Azure 云服务和角色模型一起使用,因此您在这里不需要它。Azure SDK 1.3 也很老了,今天最新的是 2.9。

接下来,尝试使用Auto-Healing 功能- 很难理解为什么您的 Web 应用程序如此消耗资源,特别是如果您尝试重新启动 W3WP(您是否在仪表板的 Process Explorer 中将其杀死?),所以内置 -功能可能会有所帮助。

您可以找到webapp id 并执行 PowerShell,例如,停止和启动它。如果这没有帮助,我建议重新创建实例。

于 2016-04-28T19:32:43.803 回答
1

对这个线程做了一些研究。看起来 Azure API 也可以解决这个问题。

参考:https ://docs.microsoft.com/en-us/rest/api/appservice/appserviceplans/rebootworker

希望这可以帮助 !

于 2020-01-14T13:43:10.973 回答