The Windows Azure Programming Model
Thursday, November 11, 2010
Writing an application for Windows Azure is much like writing one for Windows Server. But it isn't exactly the same. In fact,Windows Azure is different enough to qualify as having its own programming model.
I've written a Microsoft-sponsored white paper, available here
, that describes the Windows Azure programming model at a high level. There's no code in the paper; instead, I've tried to explain the concepts that underlie the model.
The paper lays out three rules that Windows Azure applications should follow:
- A Windows Azure application is built from one or more roles.
- A Windows Azure application runs multiple instances of each role.
- A Windows Azure application behaves correctly when any role instance fails.
You don't absolutely have to follow all of these rules when you create a Windows Azure app. But if you don't, you probably won't be happy with how your app behaves--this isn't the familiar Windows Server world.
Getting a handle on this new programming model isn't hard, but it does require learning a few new things. As the Windows Azure platform gets more important, both in the cloud and on-premises, more and more apps will be built on it rather than on Windows Server. If you plan to build apps on Windows Azure--that is, if you plan to continue developing in the Microsoft environment--I encourage you to read this paper.