The IT industry has been evolving, and will continue to evolve at a rapid pace; and with the advent of the cloud computing, the rate of evolution is accelerating significantly. Back in January 2010, when we started work on the first guide in this series, Microsoft Azure offered only a basic set of features such as compute, storage and database. Two years later, as we write this guide, we have available many more advanced features that are useful in a variety of scenarios.
Meanwhile, general acceptance and use of cloud computing by organizations has also been evolving. In 2010, most of the people I talked to were interested in the cloud, but weren't actually working on real projects. This is no longer the case. I'm often impressed by the amount of knowledge and experience that customers have gained. There's no doubt in my mind that industry as a whole is heading for the cloud.
However, transition to the cloud is not going to happen overnight. Most organizations still have a lot of IT assets running in on-premises datacenters. These will eventually be migrated to the cloud, but a shift to the next paradigm always takes time. At the moment we are in the middle of a transition between running everything on-premises and hosting everything in the cloud. "Hybrid" is a term that represents the application that positions its architecture somewhere along this continuum. In other words, hybrid applications are those that span the on-premises and cloud divide, and which bring with them a unique set of challenges that must be addressed. It is to address these challenges that my team and I have worked hard to provide you with this guide.
The goal of this guide is to map Azure features with the specific challenges encountered in the hybrid application scenario. Azure now offers a number of advanced services such as Service Bus, Caching, Traffic Manager, Azure Connect, SQL Azure Data Sync, VM Role, ACS, and more. Our guide uses a case study of a fictitious organization to explain the challenges that you may encounter in a hybrid application, and describes solutions using the features of Azure that help you to integrate on-premises and the cloud.
As we worked with the Azure integration features, we often needed to clarify and validate our guidelines for using them. We were very fortunate to have the full support of product groups and other divisions within Microsoft. First and foremost, I want to thank the following subject matter experts: Clemens Vasters, Mark Scurrell, Jason Chen, Tina Stewart, Arun Rajappa, and Corey Sanders. We relied on their knowledge and expertise in their respective technology areas to shape this guide. Many of the suggestions raised by these reviewers, and the insightful feedback they provided, have been incorporated into this guide.
The following people were also instrumental in providing technical expertise during the development of this guide: Kashif Alam, Vijaya Alaparthi, Matias Woloski, Eugenio Pace, Enrique Saggese, and Trent Swanson (Full Scale 180). We relied on their expertise to validate the scenario as well as to shape the solution architecture.
I also want to extend my thanks to the project team. As the technical writers, John Sharp (Content Master) and Alex Homer brought to the project both considerable writing skill and expertise in software engineering. Scott Densmore, Jorge Rowies (Southworks), Alejandro Jezierski (Southworks), Hanz Zhang, Ravindra Mahendravarman (Infosys Ltd.), and Ravindran Paramasivam (Infosys Ltd.) served as the development and test team. By applying their expertise with Azure, exceptional passion for technology, and many hours of patient effort, they developed the sample code.
I also want to thank RoAnn Corbisier and Richard Burte (ChannelCatalyst.com, Inc.) for helping us to publish this guide. I relied on their expertise in editing and graphic design to make this guide accurate, as well as interesting to read.
The visual design concept used for this guide was originally developed by Roberta Leibovitz and Colin Campbell (Modeled Computation LLC) for "A Guide to Claims-Based Identity and Access Control." Based on the excellent responses we received, we decided to reuse it for this book. The book design was created by John Hubbard (eson). The cartoon faces were drawn by the award-winning Seattle-based cartoonist Ellen Forney.
Many thanks also go out to the community at our CodePlex website. I'm always grateful for the feedback we receive from this very diverse group of readers.
Senior Program Manager – patterns & practices
Redmond, January 2012
Last built: June 4, 2012