2011-12-28 43 views
4

我正在尋找一些代碼,將角色擴展到給定數量的實例,並給出我想要擴展的角色ID。我正在尋找某人來實施這種方法。以編程方式擴展Windows Azure角色

Private Shared Sub DoScaleOperation(RoleID As String, InstanceCount As Integer) 
    'TODO: 
    'Check if the current number of instances in the role RoleID matches InstanctCount 
    'and if the numbers don't match then scale down or scale up as appropriate. 
End Sub 

此方法應該適用於開發環境和雲環境。有誰知道如何做到這一點?

我也想知道角色實例的名稱將會放大哪些名稱,以及在縮小比例時刪除的實例的名稱。我希望實例的名稱會像RoleID_(0到InstanceCount - 1)。

回答

7

有一個API需要調用以編程方式更改Azure中的實例數:http://msdn.microsoft.com/en-us/library/windowsazure/ee460809.aspx此API在本地開發環境中不起作用。您需要提供您的通話的管理證書。 您還可以使用Azure cmdlet更改實例計數。

+0

我需要在角色縮小之前執行某些事件,以確保我清除屬於角色實例的某些數據,因此典型的自動縮放方法對我無效。我不瞭解其餘的api,對我來說它看起來像古代中國人。所以我想知道是否有人可以提供我的方法? – RyanFishman 2011-12-28 04:11:04

+0

瞭解。這裏有一些關於這個話題的文章。 http://dotnet.dzone.com/news/windows-azure-and-scaling-how和http://blogs.ugidotnet.org/corrado/archive/2011/02/09/how-to-programmatically-change- azure-role-instances.aspx的數量,並且還有一些顯示如何使用cmdlet,如果你足夠谷歌。除非它是一個cmdlet,否則沒有神奇的「一行代碼」 – Igorek 2011-12-28 04:19:31

+2

您可以處理OnStop()事件以在您的角色實例中執行關閉代碼。這使您的關閉順序與擴展您的代碼無關(並且您不希望在縮放的同一實例中具有縮放代碼)。此外,您的角色實例需要在意外關閉時(例如硬件故障)正常恢復。 – 2011-12-28 06:03:11

相關問題