We’re happy to announce the release of our newest free ebook, Microsoft Azure Essentials: Azure Web Apps for Developers (9781509300594), by Rick Rainey. This is the fourth ebook in Microsoft Press’s free Microsoft Azure Essentials series.
Download all formats (PDF, Mobi and ePub) at the Microsoft Virtual Academy.
Below you’ll find the ebook’s Foreword, by Scott Guthrie, Executive Vice President of the Cloud and Enterprise group at Microsoft, as well as a few helpful sections from its Introduction. Enjoy!
I’m thrilled to be able to share these Microsoft Azure Essentials ebooks with you. The power that Microsoft Azure gives you is thrilling but not unheard of from Microsoft. Many don’t realize that Microsoft has been building and managing datacenters for over 25 years. Today, the company’s cloud datacenters provide the core infrastructure and foundational technologies for its 200-plus online services, including Bing, MSN, Office 365, Xbox Live, Skype, OneDrive, and, of course, Microsoft Azure. The infrastructure is comprised of many hundreds of thousands of servers, content distribution networks, edge computing nodes, and fiber optic networks. Azure is built and managed by a team of experts working 24x7x365 to support services for millions of customers’ businesses and living and working all over the globe.
Today, Azure is available in 141 countries, including China, and supports 10 languages and 19 currencies, all backed by Microsoft’s $15 billion investment in global datacenter infrastructure. Azure is continuously investing in the latest infrastructure technologies, with a focus on high reliability, operational excellence, cost-effectiveness, environmental sustainability, and a trustworthy online experience for customers and partners worldwide.
Microsoft Azure brings so many services to your fingertips in a reliable, secure, and environmentally sustainable way. You can do immense things with Azure, such as create a single VM with 32TB of storage driving more than 50,000 IOPS or utilize hundreds of thousands of CPU cores to solve your most difficult computational problems.
Perhaps you need to turn workloads on and off, or perhaps your company is growing fast! Some companies have workloads with unpredictable bursting, while others know when they are about to receive an influx of traffic. You pay only for what you use, and Azure is designed to work with common cloud computing patterns.
From Windows to Linux, SQL to NoSQL, Traffic Management to Virtual Networks, Cloud Services to Web Sites and beyond, we have so much to share with you in the coming months and years.
I hope you enjoy this Microsoft Azure Essentials series from Microsoft Press. The first three ebooks cover fundamentals of Azure, Azure Automation, and Azure Machine Learning. And I hope you enjoy living and working with Microsoft Azure as much as we do.
Executive Vice President
Cloud and Enterprise group, Microsoft Corporation
Azure Web Apps is a fully managed platform that you can use to build mission-critical web applications that are highly available, secure, and scalable to global proportions. Combined with first-class tooling from Visual Studio and the Microsoft Azure Tools, the Azure Web Apps service is the fastest way to get your web application to production. Azure Web Apps is part of the Azure App Service that is designed to empower developers to build web and mobile applications for any device.
Developing web applications to host on Azure Web Apps is a familiar experience for developers accustomed to hosting web applications on Internet Information Services (IIS). Developers can use ASP.NET, Java, Node.js, PHP, and Python for their application development locally and easily deploy to Azure Web Apps. The environment supports continuous deployment to multiple staging environments, enabling development teams to deploy application updates rapidly and reliably.
Azure Web Apps is more than a host for web front-end applications. It also supports development of robust background processes using the Azure WebJobs feature. WebJobs can be invoked on demand, scheduled, or automatically invoked using a feature-rich WebJobs SDK.
The monitoring and diagnostics built into Azure Web Apps are exceptional. The Azure portal delivers a professional UI experience that you can use to interact with your monitoring and diagnostics data. Site extensions are available to further enhance this experience, and services such as Application Insights can be used to gain deeper insight into your application code running in Azure.
This ebook will guide you through these topics, point you to some best practices along the way, and provide detailed walkthroughs for you to gain hands-on experience.
Who should read this book
This book focuses on providing essential information about developing web applications hosted on Azure Web Apps. It is written with the developer who has experience using Visual Studio and the .NET Framework in mind. If Azure Web Apps is new to you, then this book is for you. If you have experience developing for Azure Web Apps, then this book is for you, too, because there are features and tools discussed in this text that are new to the platform.
It is expected that you have at least a minimal understanding of cloud computing concepts and basic web services. Some familiarity with developing web applications using Visual Studio and C# is not required but may help fast-track your learning. You should have general knowledge of how to use the Azure Preview portal at http://portal.azure.com.
This book might not be for you if…
This book might not be for you if you are looking for guidance developing ASP.NET MVC or Web API applications. Instead, this book focuses on the features and services of the Azure platform used to develop web-based cloud applications. Although ASP.NET MVC may be used to demonstrate concepts, it is only to the extent necessary to support the in-depth discussion on how to use Azure Web Apps to host your web application.
Organization of this book
This book provides information you can use to start building web applications using Azure Web Apps. It will guide you through development, deployment, and configuration tasks that are common for today’s developer building cloud applications.
Each chapter stands alone; there is no requirement that you perform the hands-on demonstrations from previous chapters to understand any chapter. The topics explored in this book include the following:
- Chapter 1, “Microsoft Azure Web Apps”: This chapter starts with an introduction to Azure Resource Groups and App Service Plans and progresses into essential tasks such as creating and configuring a web app. Learn best practices for storing and retrieving app settings and connection strings. Configure deployment slots and set up continuous deployment using Visual Studio Online. Wrap up with a discussion about Role Based Access Control (RBAC) and how you can use it to manage access to your Azure resources.
- Chapter 2, “Azure WebJobs”: Learn everything you need to know to build and deploy background processing tasks using Azure WebJobs. You will learn the basics of the WebJobs feature and proceed into a deeper discussion on how to use the WebJobs SDK. You will learn about the Azure WebJobs Dashboard and how the WebJobs SDK enhances the dashboard experience.
- Chapter 3, “Scaling Azure Web Apps”: Learn how to scale up and scale out your Azure web app and web jobs. You will learn how to configure Autoscale to scale your web app dynamically based on performance metrics and schedules. See how you can use Azure Traffic Manager to achieve global scale for your web apps.
- Chapter 4, “Monitoring and diagnostics”: Learn about the many logging features built into the Azure Web Apps platform and how to configure logging to get the diagnostics data you need to troubleshoot issues. You will learn how to configure storage locations and retention policies for logs, how to view logs in real time using the log streaming service, and even how to debug your web app remotely while it is running in Azure. You will get an introduction to some powerful site extensions you can use to view logs and perform analysis directly from your browser. Finally, you will learn how you can monitor your resource group down to individual resources and how you can use Application Insights to deliver a complete 360-degree view into your application code for monitoring and diagnostic purposes.