Tip pro vyšší výkonnost aplikací ve Windows Azure

Před nějakým časem jsem se setkal se zajímavou situací. Výpočetní úloha, která na mém notebooku trvala cca 13-14 sekund trvala bez zjevného důvodu ve Windows Azure nepříjemně dlouhých 50-60 sekund. V obou případech bylo srovnatelné CPU, zátěž procesoru 100%ní.

Nakonec se mi podařilo zvládnout v Azure stejnou úlohu za výborných 8-9 sekund. Trik je velmi jednoduchý – stačí přepnout operační systém v cloudu na Windows Server 2008 R2 (výchozí je Windows Server 2008). Tento fakt zřejmě souvisí s tím, že jádro novějšího serveru už bylo vyvíjeno s ohledem na optimální běh pod HyperV. O to více mne osobně udivuje, proč není novější operační systém výchozí možností.

Přepnutí se pro již nasazenou aplikaci provede snadno v portálu (celý cyklus trvá cca 10 minut):

image

V nástrojích Visual Studia pro tuto volbu není uživatelské rozhraní (což rovněž nechápu), nicméně lze to snadno přepnout editací .cscfg souboru, čímž získáte správný operační systém již při nasazení aplikace:

image

Upozornění: Popsané zlepšení nastane velmi pravděpodobně pouze pro některé úlohy, nelze čekat, že podobného zrychlení dosáhnete pro všechny úlohy v cloudu.

Michael