Azure Web Apps Service

Websites as a Component of Azure

Microsoft Azure provides a specialized website service that you can use to host any website without having to configure a virtual machine or associated platform software. If you create an Azure web app, you can choose from a wide range of common web apps, including WordPress , Drupal, and Umbraco.

Alternatively, you can upload a custom web app from Visual Studio 2013 or another web developer tool. To host applications in Azure, you can use Platform as a service (PaaS) as an execution model.

If you want to host a web app in Azure, you can choose to use:

  • IaaS Azure Virtual Machines.
  • Azure Websites.
  • Azure Cloud Services.

To select the option that best suits your needs, consider the level of control and scaling flexibility you seek, and the languages and frameworks that you want to use.

Host Websites in Azure

Virtual Machines

Since an IaaS virtual machine in Azure can include a web server, such as IIS or Apache, you can use them to host web applications. This scenario is very much like running a traditional web farm to host your web application, except that the servers are at Azure data centers and not on-premises. Virtual machines are therefore commonly used to migrate an on-premises web application into Azure with as little modification as possible. Supporting servers, such as SQL Servers to host databases, can be hosted on other VMs in the same IaaS cloud service. Load balancing is available to scale out the web application when necessary.

Host in Virtual Machines

If you choose to host a web application in VMs, you have the maximum control over the operating system and supporting software. For example, you could install a specific version of PHP on Apache if you need it. However, you must invest the time to patch and maintain the infrastructure you create. If you want to scale the application out, you must provision new VMs to host the new instances of the application. You can use RDP to connect to IaaS virtual machines.

Azure Web Apps

You can choose to host your web application in the Azure Websites service. After creating a new Azure website, you can either upload a custom web application or choose from a wide range of popular general purpose web applications, including Drupal, Word Press, Umbraco, and others. Developers can build custom web applications to host in Azure Websites by using ASP.NET, Node.js, PHP, and Python.

Host in Azure Web Apps

You can scale up an Azure website by changing tiers. This increases the traffic a single instance of the site can service. Alternatively, scale out by installing a website in multiple instances and using Azure load balancing to distribute traffic. However, you can only scale the website as a single component—you cannot scale separate parts of the application differently. You also cannot gain RDP access to the web server. You can use Azure SQL Database or SQL Server on a virtual machine to host an underlying database.

Cloud Services

You also can choose to build a web app as an Azure PaaS cloud service. A PaaS cloud service consists of at least one web role, which includes the application’s user interface, and one or more worker roles, which run background tasks. Because you can scale each role independently by specifying the number of role instances, you have a large degree of control over scalability with PaaS cloud services . You can connect to the web servers that host your PaaS cloud service by using RDP.