Microsoft Silverlight 5 and Windows Azure Enterprise Integration and Visual Studio 11 First Look Cookbook

A lot of people seem to be writing/have written books at the moment, my self included.

The first book I want to mention is David Burela’s book Microsoft Silverlight 5 and Windows Azure Enterprise Integration that is available now (more info at  http://www.packtpub.com/microsoft-silverlight-5-enterprise-integration-on-windows-azure/book).

Disclaimer – I know David as a friend & assisted with the technical review of this book so am somewhat biased!

This book will take you from Azure basics to using advanced features such as caching and load balancing. The book tries to simulate real world problems you will experience and the reader works through a number of simulated examples .

Having had the opportunity to work on a number of Azure projects the last few years it was great to be able to give input to this book’s best practice section and how to avoid various Azure pitfalls (and there are many!). Readers shouldn’t be put off by the Silverlight bit in the title- if you are working with Azure much of the advice will still be relevant.

The second book I want to mention is the upcoming Microsoft Visual Studio 11 First Look Cookbook by Richard Banks. This one isn’t quite ready yet and I haven’t read it but if Richard’s writing is as good as some of his presentations, podcast (http://www.talkingshopdownunder.com/) and blog articles it’s going to be a great read.

Technically I guess there is a slight overlap here with my own book Introducing .net 4.5 although Richards seems to be more focussed on a step by step guide for specific issues rather than a broad overview.  Richards also does have a slightly better cover than Apress’s stockstandard black and yellow!

I say buy both – but probably mine if you only buy one 😉

Azure deployment – remain in running state

I spent a frustrating week dealing with Azure deployment.

One of the most irritating things for me about Azure is that sometimes you can screw up an Azure package but this wont be revealed until you try and deploy it as it will remain in the starting state. As the time a role can take to start up varies this is doubly annoying as you dont know whether it has failed yet!

But wait – surely Azure would give you a bit of information regarding why it cannot start up your role?

Well no although this potentially changes with Azure Tools 1.3. Version 1.3 of the tools allow you to remote desktop into the role and may or may not offer additional information..

So what kind of things can cause a role to remain in this state and consider sacrificing small animals to the azure gods?

From my experience:

1) Not including required assemblies- make sure all necessary assemblies are set to copy local. Azure is not your machine and may not know about your assemblies
2) Corrupt configuration
3) Storage wrongly configured e.g. leaving your role pointing at devstorage4) Wrongly configured or missing certificates
4) The moon moving into Venus’s orbit..

When you package Azure roles by default they are encrypted (devfabric packages are not) which can make it tricky to spot missing assemblies etc. You can disable this by creating a new system environmental variable called _CSPACK_FORCE_NOENCRYPT_ and setting it to true (see http://blogs.msdn.com/b/jnak/archive/2009/04/16/digging-in-to-the-windows-azure-service-package.aspx). You can then change the .cspkg extension to zip and browse the contents of it. Note the team say this technique is unsupported so may stop working in a future version of the tools.

Good luck!