Book Image

Microsoft Azure: Enterprise Application Development

Book Image

Microsoft Azure: Enterprise Application Development

Overview of this book

Microsoft's Azure platform has proved itself to be a highly scalable and highly available platform for enterprise applications. Despite a familiar development model, there is a difference between developing for Azure and moving applications and data into the cloud. You need to be aware of how to technically implement large-scale elastic applications. In this book, the authors develop an Azure application and discuss architectural considerations and important decision points for hosting an application on Azure. This book is a fast-paced introduction to all the major features of Azure, with considerations for enterprise developers. It starts with an overview of cloud computing in general, followed by an overview of Microsoft's Azure platform, and covers Windows Azure, SQL Azure, and AppFabric, discussing them with the help of a case-study. The book guides you through setting up the tools needed for Azure development, and outlines the sample application that will be built in the later chapters. Each subsequent chapter focuses on one aspect of the Azure platform—web roles, queue storage, SQL Azure, and so on—discussing the feature in greater detail and then providing a programming example by building parts of the sample application. Important architectural and security considerations are discussed with each Azure feature. The authors cover topics that are important to enterprise development, such as transferring data from an on-premises database to SQL Azure using SSIS, securing an application using AppFabric access control, blob and table storage, and asynchronous messaging using Queue Storage. Readers will learn to leverage the use of queues and worker roles for the separation of responsibilities between web and worker roles, enabling linear scale out of an Azure application through the use of additional instances. A truly "elastic" application is one that can be scaled up or down quickly to match resources to demand as well as control costs; with the practices in this book you will achieve application elasticity.
Table of Contents (23 chapters)
Microsoft Azure: Enterprise Application Development
Credits
About the Authors
Acknowledgement
Acknowledgement
About the Reviewer
Preface
Index

Cloud computing infrastructure


Cloud computing requires more than just a server room, and the different providers employ different technologies. In all cases, cloud computing relies on data centers in multiple geographic locations, with multiple redundancies of everything. It's quite a challenge to locate an area that is geologically stable and relatively free from severe weather events or other natural disasters, making redundancies of locations, in addition to redundancies of utilities, a necessity.

Cloud data centers have moved away from the "racks-in-a-room" or "raised floor" design of traditional data centers. One of the more common designs for cloud data centers is to modify a shipping container to hold racks of servers, and then linking multiple containers together into a large center. The container-based design is used more for stability, space efficiency, and physical isolation of machines. A forty-foot tall rack of servers would be highly unstable and extremely difficult to manage. But a stack of four containers is very stable, and each container is as easy to manage as a small server room. It's also more efficient to cool a number of small rooms as compared to a giant warehouse.

For Azure, Microsoft has taken the container concept a little farther. Microsoft's Azure containers (called Generation 4 Modular Data Centers or G4MDC) are not based on a shipping container, although the end design resembles one. Technically, Microsoft's containers are classified as air handling units and the servers as heaters. Cooling is achieved by pulling outside air through filters, into the container, and around the servers at high velocity. In fact, some of Microsoft's new data centers won't even have roofs! Each G4MDC unit is completely self-contained with airflow regulation, and its own connections for power and bandwidth. Each 40-foot unit can accommodate up to 2,000 servers, and some of Microsoft's facilities will house 400,000 to 500,000 servers.