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 firstclass 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.

Rick Rainey

Rick Rainey is an independent consultant and owner of CloudAlloc, LLC. He specializes in helping customers migrate to and build new applications to run on the Microsoft Azure Platform. He has over 25 years of experience designing, developing, and supporting applications using Microsoft technologies.

Rick is a Microsoft Azure Insider and Advisor, Certified Trainer (MCT), speaker, blogger, and Azure community enthusiast. He worked for Microsoft in various developer-focused roles for 12 years with emphasis on helping ISV’s develop solutions for the Windows and Azure platforms.

He is an active contributor in the Azure community. He speaks often at community events, organized and presented at the Dallas Global Azure Bootcamp, and helps support the broader Azure community by answering questions on Stack Overflow. He also writes about Azure on his blog at http://rickrainey.com and tweets Azure goodness on Twitter at @RickRaineyTx. Rick resides with his family in Dallas, Texas. Outside of work he is an avid runner and an occasional biker.

  • 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.