Kom igång med Visual Studio 2010 Beta 2 och Windows Azure
Nu när julen kommer farandes brukar en hel del människor ta några dagar ledigt. Vad kan då passa bättre än att passa på att kanske lära sig något nytt?
Visual Studio 2010 Beta 2 släpptes som bekant i oktober månad. Vid den tidpunkten vad den senaste versionen av Windows Azure verktygen för Visual Studio den version som släpptes i juli. Detta gjorde att Visual Studio teamet valde att inte skicka med verktygen för Windows Azure i Visual Studio 2010 Beta 2 då de visste att det kommer en ny version i samband med Windows Azure releasen på PDC. Men det är inte så illa som det kanske låter. De såg istället till att det fanns ett enkelt sätt att installera Windows Azure verktygen när de väl är släppta.
När du väljer att skapa ett nytt projekt av typen Windows Azure Cloud Service så kommer du första gången att skickas till webbsidan för nedladdning och installation av Visual Studio Tools for Windows Azure. En helt respektabel lösning på det hela tycker jag. När Visual Studio 2010 släpps någon gång i vår så kan vi nog vara ganska säkra på att de har synkat releaserna. (Detta gäller också ASP.NET MVC 2 men är en annan historia)
När jag har skapat mitt projekt får jag möjligheten att lägga till en eller flera sk Roller. En Roll är helt enkelt en viss typ av applikation som kan köras i Windows Azure. Några nyheter som vi kan se här är bland annat roller för WCF och ASP.NET MVC. Just nu kör jag på Visual Web Developer 2010 Express (gratisversionen av Visual Studio) vilket gör att jag inte får tillgång till den nya F# Worker-rollen.
Nu när min molntjänst har skapats har jag fått två projekt i Visual Studio. Det ena projektet är definitionen av min molntjänst (CloudService11) – denna innehåller, bland en hel del annat, information om vilka roller som ingår och antalet instanser av dessa roller.
Med Visual Studio 2010 kommer också .NET Framework 4 (eller om man nu ser på det åt andra hållet). Som standard när jag skapar ett nytt projekt i Visual Studio 2010 så är det förvalt att projektet skall köras på just .NET Framework 4. Vad jag måste ha i åtanke här är att Windows Azure inte, än, stöder .NET Framework 4 utan där är det .NET Framework 3.5 SP1 som gäller. Jag måste alltså ändra vilket ramverk min molntjänst skall baseras på för att kunna publicera den till Windows Azure. Med någon av betalversionerna av Visual Studio 2010 kan jag välja detta direkt när projektet skapas men iom att jag nu gör Express får jag ändra detta i efterhand. Detta gör jag genom att högerklicka på mitt webbprojekt och välja Properties. I denna vy ser jag sedan till att Target framework är satt till .NET Framework 3.5.
Vad jag också brukar göra är att ändra antalet instanser av varje roll. Det är nämligen så att man måste ha minst två instanser av varje roll för att fastställda SLA:er skall gälla. För att göra detta dubbelklickar jag på min roll Hello World och justerar därefter värdet på Instance count till 2. Vad som också kan vara värt att lägga märke till här är möjligheten att välja storlek på den virtuella maskin som min roll (webbapplikation i detta fall) kommer installeras och köras i. En Small är en burk med ca 2GB RAM och 1 processorkärna. För varje storlek dubblas kapaciteten, vilket gör att en ExtraLarge är på ca 16GB RAM och 8 processorkärnor.
Jag har nu knåpat på min webbapplikation och vill prova den i Windows Azure. Jag skulle kunna publicera den till molnet och testa där men ett mycket snabbare sätt är att köra den i den lokala simuleringsmiljön Windows Azure Simulation Environment. Genom att starta debuggern (F5) startas också simuleringsmiljön och min molntjänst publiceras dit.
Genom att öppna Development Fabric kan jag nu se att jag har två instanser av min Hello World webbapplikation rullandes.
Nu när jag känner mig nöjd med min molntjänst högerklickar jag på mitt molntjänstprojekt och väljer Publish. Visual Studio skapar då ett paket som är redo att laddas upp till Windows Azure.
Lycka till i molnet och God Jul!
Mer läsning