windows azure - 角色被破坏时的事件

时间:2012-11-06 21:05:48

标签: azure lifecycle azure-worker-roles

如果我在一个辅助角色实例的主循环中有一个try / catch,那么当例如更改/重新启动工作者角色时,是否会抛出任何异常?

还有另一种方法可以挂钩“destroy”事件,比如全局try / catch处理程序或析构函数吗? (当然,这就是幕后的任何实例,因此他们可以将实例与环境隔离开来)

工作人员/ Web角色实例的整个生命周期事件是什么?

总是说Azure是一个防故障和稳定的平台,但也有人说,实例可以随时消失。如何确保某些“关键”代码部分不会被环境中断,并且不会中断。

1 个答案:

答案 0 :(得分:0)

当以有序方式删除角色时,将调用OnStop文件中的workerrole.cs方法;

MSDN Link

public override void OnStop()
{
    try
    {
        // Add code here that runs when the role instance is to be stopped
    }
    catch (Exception e)
    {
        Trace.WriteLine("Exception during OnStop: " + e.ToString());
        // Take other action as needed.
    }
}

但是我认为你的尝试捕获对于任何非优雅的问题都是足够的。 ;)