【问题标题】:Windows Azure cloud service IIS sometimes returns 503 errorWindows Azure 云服务 IIS 有时会返回 503 错误
【发布时间】:2012-07-11 03:21:20
【问题描述】:

我正在为 Azure 云服务开发 node.js 应用程序。一切正常,但有时我的应用程序在 Azure 上部署时返回 503 错误,没有特别的原因。我通过远程桌面连接角色VM,在事件列表中发现如下错误,对应503代码返回的时间:

为应用程序池“6cd02903-1cba-4667-9d0b-20883ad3f0de”提供服务的进程意外终止。进程 ID 为“2284”。进程退出代码是“0xffffffffe”。

我尝试用谷歌搜索该错误消息,似乎 IIS 配置错误通常会导致问题,但在这种情况下它似乎是持续存在的,而不仅仅是有时像我的经验那样。此外,我对更改 Azure 提供的现成 Web 角色服务器上的 IIS 配置没有信心。我感觉它与节点有关,更可能是 iis-node 问题。

任何调试问题的帮助将不胜感激。

【问题讨论】:

  • 有什么理由不将 azure 应用设置为“worker”并一起绕过 IIS?
  • 好吧,恐怕,按照这种方式,我可以设置我的专用服务器,并一起绕过 Azure 云服务 :-) 我尝试按照它们的方式坚持和使用这些服务故意的。无论如何,node-iis 提供了一些不错的功能(静态文件服务、失败时进程重启等)。
  • @bbbonthemoon - 出于好奇,问题的根本原因和最终解决方案是什么?

标签: node.js iis azure azure-web-roles


【解决方案1】:

首先,这种崩溃反映了您的应用域由于您的网络应用中的一些异常而崩溃。这类问题是关键问题。因为您使用的是 node.js,所以很可能您的某些代码可能会导致此类问题,但是需要正确调查此问题。

如果您在应用程序池中关闭“快速故障保护”,您可以避免该问题,但不确定要多长时间,因为如果您在任何地方的代码有任何问题,最好先解决问题而不是掩盖它。

由于您的退出代码是 0xFFFFFFFE,这与代码 CLEAN_WORKER_PROCESS_EXIT_CODE 相关意味着该进程已终止干净,因为崩溃不是突然/强制的。你可以做的是首先对你的 Azure VM 进行 RDP(我希望你有小型或更大的 VM),然后 Debug Diagnostics tools 来调查 IIS 崩溃问题。如果您无法解决此问题,您可以联系Windows Azure Support team 获得免费帮助,他们将帮助您解决此问题。

【讨论】:

  • 感谢您的有用回复。如果我的应用程序失败,我认为调试错误的最简单方法是查看脚本的 STDOUT。你知道在哪里可以找到它,或者如何启用 windows-azure 来记录它吗?谢谢
  • 我不确定node.js标准输出是如何记录在windows机器上的,需要一些时间来看看。例如,调试跟踪消息由 Windows Azure 诊断收集,然后发送到 Azure 存储(如果已配置)。对于 node.js,如果您可以以某种方式将这些标准输出记录到事件日志或作为跟踪,诊断监视器可能会拾取它..
猜你喜欢
  • 2017-05-17
  • 1970-01-01
  • 2011-02-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-12
  • 2021-06-16
  • 2011-07-22
相关资源
最近更新 更多