2012-05-11 14 views
2

には、vmロールインスタンスのステータスをビジー状態からレディ状態に変更する方法はありません。 可能であれば、wcfサービスでこれを行いたいと思います。 ありがとうございました。プログラムでAzure VM Roleインスタンスをレディ/ビジー状態に設定する方法はありますか?

+0

あなたは正確にAzureのVMでのPowerShellコマンドを使用してこれを行うことができ掲示を見てみることができます。 http://stackoverflow.com/questions/10336002/how- can-i-test-multiple-web-role-instances-in-windows-azure – AvkashChauhan

答えて

4

ファブリックコントローラは、インスタンスのステータスを定期的にチェックし、そうするとインスタンスがビジーであるかどうかを知らせることができます。

あなたは、単にStatusCheckイベントを処理し、(SetBusyメソッドを呼び出すことで)忙しいに設定する必要があります。インスタンスが準備完了(ビジーではない)したら、SetBusyメソッドの呼び出しを停止します。

public override bool OnStart() 
{ 
    RoleEnvironment.StatusCheck += RoleEnvironmentStatusCheck; 

    return base.OnStart(); 
} 

// Use the busy object to indicate that the status of the role instance must be Busy 
private volatile bool busy = true; 

private void RoleEnvironmentStatusCheck(object sender, RoleInstanceStatusCheckEventArgs e) 
{ 
    If (this.busy) 
    { 
     // Sets the status of the role instance to Busy for a short interval. 
     // If you want the role instance to remain busy, add code to 
     // continue to call the SetBusy method 
     e.SetBusy(); 
    } 
} 

参考:http://msdn.microsoft.com/en-us/library/microsoft.windowsazure.serviceruntime.roleenvironment.statuscheck.aspx

関連する問題