Developing Multi-tenant Applications for the Cloud on Windows Azure (Paperback)
Dominic Betts, Alex Homer, Alejandro Jezierski, Masashi Narumoto, Hanzhong Zhang
How can you create an application that has truly global reach, and can scale rapidly to meet sudden massive spikes in demand? Historically, companies had to invest in an infrastructure capable of supporting such an application themselves, and plan for peak demand—which often means that much of the capacity sits idle for much of the time. Typically, only large companies would have the available resources to risk such an enterprise. The cloud has changed the rules of the game. By making infrastructure available on a “pay as you go” basis, creating a massively scalable, global application is within the reach of both large and small companies. Yes, by moving applications to the cloud you’re giving up some control and autonomy, but you’re also going to benefit from reduced costs, increased flexibility, and scalable computation and storage. This guide is the third release of the second volume in a series about Windows Azure. It demonstrates how you can create from scratch a multi-tenant, Software as a Service (SaaS) application to run in the cloud by using the Windows Azure tools and the increasing range of capabilities of Windows Azure. The guide focuses on both good practice design and the practicalities of implementation for multi-tenant applications, but also contains a wealth of information on factors such as security, scalability, availability, and elasticity that are relevant to all types of cloud hosted applications. The guide is intended for any architect, developer, or information technology (IT) professional who designs, builds, or operates applications and services that run on or interact with the cloud. Although applications do not need to be based on the Windows operating system to work in Windows Azure, or be written using a .NET language, this guide is written for people who work with Windows based systems. You should be familiar with the .NET Framework, Visual Studio, ASP.NET MVC, and Visual C#.