# Azure Web Apps

Azure Web Apps was the name for a cloud computing based platform for hosting websites, created and operated by Microsoft. It is a platform as a service (PaaS) which allows publishing Web apps running on multiple frameworks and written in different programming languages (.NET, node.js, PHP, Python and Java), including Microsoft proprietary ones and 3rd party ones. Microsoft Azure Web Sites became available in its first preview version in June 2012, and an official version ("General Availability") was announced in June 2013. Microsoft Azure Web Sites was originally named Windows Azure Web Sites, but was renamed as part of a re-branding move across Azure in March 2014. It was subsequently renamed "App Services" in March 2015.

## History

Microsoft initially offered a basic web hosting service as part of Office Live Small Business, which was launched in late 2007. Office Live Small Business offered customers free and commercial web hosting with a built-in system for creating websites based on built-in templates and a site creation wizard.
When Microsoft started allocating resources into developing its numerous cloud solutions, a group was formed in Microsoft Azure to develop Microsoft Azure Web Sites. Microsoft Azure Web Sites was announced in June 2012 as a preview release.
In parallel, Microsoft developed Microsoft Azure Pack, which offers the same technology that can be installed as a private-cloud on sets of servers at a customer's site and under direct customer control.
In mid-2013, both Microsoft Azure Web Sites and Microsoft Azure Pack were officially released to the public.

## Features

Microsoft Azure Web Sites is a web-hosting platform that supports multiple technologies, and programming languages (.NET, node.js, PHP, Python). Users with Microsoft Azure subscriptions can create Websites, and deploy content and code into the Web sites. Microsoft Azure Web Sites supports a website creation wizard which allows the user to create a blank site, or create a site based on one of several available pre-configured images from the website gallery.
As part of creating the website, the site's URL is assigned a subdomain of azurewebsites.net. In various for-pay tiers, a website can be assigned one or more custom domains. This is implemented by setting a CNAME record on the DNS server that hosts the user's domain's zone to point at the user's web site hosted in Azure. On some for-pay tiers, the user has the added option of uploading an SSL certificate and configuring the site to be bound to HTTPS.
Once a site has been created, the user can add or modify its content using multiple deployment methods, including Web Deploy (MSDeploy), TFS (via Visual Studio), FTP, FTPS, WebMatrix, CodePlex, GitHub, Dropbox, Bitbucket, Mercurial and local Git.
Other features of Azure Web Sites are:
* User-selected placement in one or multiple data centers across the globe.
* Uptime SLA of 99.95% for Standard tier customers.
* Continuous monitoring of site metrics such as CPU time, Data in, Data out, HTTP errors and additional metrics.
* Setting of monitoring alerts.
* Log collection and failed request tracing for tracking and troubleshooting.
* Deployment of a Microsoft SQL or MySQL database to be used with web applications.
* Websites are hosted on IIS 8.0 running on a custom version of Windows Server 2012.
* Support for 4 service tiers: Free, Shared, Basic and Standard (dedicated).
* In the Basic and Standard tiers, support for 3 VM sizes for scaling up.
* In the for-pay tiers, support for manual or automatic scaling-out with up to 10 instances of VMs.
* Support for integration with Azure Traffic Manager to route traffic manually or automatically between websites in different regions across the globe.
* Authentication using Microsoft Azure Active Directory

## Implementation

Microsoft Azure Web Sites is implemented as websites that are dynamically created on-demand on servers running Windows Server 2012 and IIS 8.0. When a client posts a request to a web site, Microsoft Azure Web Sites dynamically provisions the site on one of the Azure virtual machines pointing it at content stored in Azure Storage containers. The Azure Virtual Machines are deployed in groups called "Stamps", which may contain hundreds of such machines. Microsoft deploys these stamps in its Azure data centers across the world, and adds more stamps as demand grows.

## Tiers

Azure Web Sites services are offered in 4 tiers. The entry-level tier is the "free" tier. The free tier supports up to 10 websites with 1 GB of content storage, and is limited to 165 MB of daily data egress. The first for-pay tier is the "Shared" tier. Shared tier sites support custom domains and can be scaled out to up to 6 instances. The current highest for-pay tier is the "Standard" tier. Standard tier websites run on VMs dedicated exclusively to a single customer's websites. The Standard tier supports SSL (both SNI and IP-based), scaling out to up to 10 instances, and file storage of up to 50 GB of content.
Basic and Standard tier websites can be deployed on 3 sizes of virtual machines: Small VMs with 1 virtual CPU and 1.75GB of RAM, Medium VMs with 2 virtual CPUs and 3.5 GB of RAM, and Large VMs with 4 virtual CPUs and 7GB of available RAM.

## Data centers

Microsoft operates Microsoft Azure in a number of data centers throughout the world with Microsoft Azure Web Sites available in a subset of these. When deploying websites on Microsoft Azure Web Sites customers can choose to deploy sites in a data center in any of the following geographical regions: East US, North central US, West US, East Asia, Brazil South, North Europe, West Europe, Japan East or Japan West.