在实例因异常而重新启动时,如何将HTTP请求分派到Azure Web角色实例?

时间:2012-09-11 08:43:55

标签: iis azure cloud

我正在查看我的Azure网络角色日志,并查看以下内容。在过去的某个时刻,调用RoleEntryPoint.Run()的线程抛出了一个异常,该异常传播给Run()的调用者,Azure运行时尝试通过调用RoleEntryPoint.OnStart()重新启动实例。现在我的OnStart()实现需要几分钟才能完成,我发现当OnStart()正在进行时,HTTP请求被分派到IIS。

这是预期的行为吗? Azure基础结构是否应该等到实例OnStart()成功完成?在OnStart()成功完成之前,如何让Azure排除角色从调度HTTP请求到其中?

1 个答案:

答案 0 :(得分:0)

如果OnStart方法返回true,则实例的状态将仅更改为Ready(并接受来自LB的请求)。在此之前,其状态将为忙碌(并且不接受来自LB的请求),如记录herehere

在某些情况下,这不适用:

或者可能是请求来自您的实例本地运行的进程?或者从另一个实例?