Author: Roberto Brunetti
Aimed at: Developers and managers
Pros: A useful overview
Cons: Reads too much like an advertising pitch.
Reviewed by: Alex Armstrong
Windows Azure is perhaps the most difficult of the cloud infrastructures to get to grips with. Not because it is difficult to use, but because it is difficult to know what it does and how to get started. It isn't a low level approach based on operating system images and virtual machines, but it isn't an easy to understand distributed application either. What all this means is that a good book to help you find your way around would be invaluable.
This particular book is sort of half pitched at the programmer and half at management. It starts off with a look at cloud computing in general. This reads like a management justification check list. If you know anything about Azure, or cloud computing in general you can skip it as it mostly reads like propaganda.
The book really gets going at Chapter 2 with an introduction to Azure. It covers setting up an account and your first interactions with the web-based management system. You also find out about storage, the worker role and the new virtual machine role. You also discover that the author is keen on quoting authoritative bits of the documentation, which simply say exactly what has been said already. This is a lightning, but quite useful, overview of what sorts of things lurk in Azure.
Chapter 3 begins the process of focusing on different aspects of Azure. It starts of quiet reasonably with the Web Role. As a web role is basically an ASP.NET app that you deploy to Azure most of the chapter is about using the standard tools to create a simple ASP.NET app. Chapter 4 moves on to consider storage and this is where things start to be different from standard ASP.NET development. Chapter 5 covers tables, queues and worker roles in much the same style.
Chapter 6 looks in detail at the Azure operating system and some of the almost non-developer issues - billing, content delivery networks, certificates, diagnostics and logging. Of course, not understanding these features will make development harder.
Next we move on to building an AppFabric solution, which increases the level of abstraction. This is about using WCF in the cloud and the service bus. Chapter 8 details WCF data services and OData. Chapter 9 introduces SQL Azure and its is a fairly short chapter for such a complex service.
Chapter 10 deals with accessing Azure services from a range of clients and, finally, Chapter 11 sums everything up with a look at the overall architecture.
The book does read a bit like propaganda for Azure in places and it is a very superficial overview with just enough code, in C#, to show you how things work. On the other hand, if you are looking for an overview this one isn't bad.