我正在查看我的Azure网络角色日志,并查看以下内容。在过去的某个时刻,调用RoleEntryPoint.Run()
的线程抛出了一个异常,该异常传播给Run()
的调用者,Azure运行时尝试通过调用RoleEntryPoint.OnStart()
重新启动实例。现在我的OnStart()
实现需要几分钟才能完成,我发现当OnStart()
正在进行时,HTTP请求被分派到IIS。
这是预期的行为吗? Azure基础结构是否应该等到实例OnStart()
成功完成?在OnStart()
成功完成之前,如何让Azure排除角色从调度HTTP请求到其中?
答案 0 :(得分:0)
如果OnStart方法返回true,则实例的状态将仅更改为Ready(并接受来自LB的请求)。在此之前,其状态将为忙碌(并且不接受来自LB的请求),如记录here和here。
在某些情况下,这不适用:
或者可能是请求来自您的实例本地运行的进程?或者从另一个实例?