Dive in to Azure Websites Features

Posted: June 19, 2012 in Web Sites, Windows Azure
Tags: ,

If you are a Azure Follower or professional, i bet you already had heard about codename “Antares” or the new feature is named Azure Websites. In this post i will make with you  little dive in to this Feature and his opportunities. If you have some interest for this topic stay tune.

What is About

Microsoft describes this features as powering Websites in seconds as powered as you need them to be. Microsoft presents this feature with 3 big blocks

The main Technologic idea behind marketing is to allow developer’s to focus in development and not on environment’s, allow the to go to the cloud with their favourite web technology ( non Microsoft technology included) and go lie with the traffic analysis and scale capability necessary to be Live.

All this with interaction with the development tools you normally use, and with an Appealing Administration Dashboard.

At the time of this post writing this stills a Preview feature.

To see some demo you can see the video:

http://www.youtube.com\watch?v=TZgFPdcKSkM

In this post we will concentrate under the hood

What you have?

Is not just about the deploy made in seconds and the easy way to interact between sites and other Services like database (what is already a good benefic compred to the old web roles styles). You have a notion off web gallery when creating your Website you can do that based on a technology template, you can see that applied to umbraco in the post:

https://digitalmindignition.wordpress.com/2012/06/07/umbraco-installed-as-a-template-in-azure/

You have also the possibility to use Webmatrix to deploy to Azure Website, as you use to do in the past with some hosting services

This includes have publishing settings (like url, file constrains, security credentials, etc) using a push from webmatrix.

It is also possibly to correlate the different features for example create a site from gallery. After you see some demos or try to do this you will see how actually managing websites in azure can be simple and with great integration and scale potential.

You may think right now “big deal i do everything you had talk about without azure or in shared hosts, not the same way but maybe in a cheap way and one i am used to” this is a middle true, but let’s not be fundamentalist and let’s look to the vantage of using Azure Websites:

  • No infrastructure design issues since using Azure Websites we have Cloud First design (also named by some authors as Implementation Focus);
  • In case of Datadriven WEbapps we have a SQL Based Configuration each allows easy Scale, have an optimal configuration. It’s easy to have new instances and we also have “free effort mirroring”;
  • Network Storage (unlimited, scalable  easy to get and cheap) ;
  •  Dynamic provision of sites on demand;
  • Stateless Web Server’s (no need to sync if we get up more server’s)
  • Intelligent Load Balancing;

Load Balancing Web Responses How it works under the covers?

Let’s see how the process works in the background when we do a request to the a Website deployed on the Azure Websites.

First of all we need to understand what are the states a Website hosted in azure can get and that is:

  • Active: The website is running and provision to a webserver in memory and serving Web requests;
  • Inactive: Is not provision is not running is not using memory;

When there is a request to a website on Azure, Azure receives the request and deliver’s to the right load balacer…Right here as we can imagine we have already 2 levels of balancing.

Let’s try to picture the life of a web request, let’s imagine i am accessing http://www.digitalmindignition.com that is hosted on Azure Websites.

First the request is addressed by DNS to Azure Infrastrure

Once Azure detects internally who is serving the requested Website, deliver’s to the Load Balancing system of our Website infrastructure, IIS if doesn’t encounter a valid instance runing the web URL we are trying to obtain. In that case he ask’s the  information related to URL in  a Database named runtime database, then Antares function is to determine each Websever’s in the WEbFarm is avaiable to runing the website.

This is the request Flow when a Site are inactive or as is named in Azure ColdSite. This usually happens for the first request to a Website.

But what is the process of serving a request when our site is already running (also named Hot Site)?

Well, the first step is equal

But when the Request is passed to the IIS ARR he already knows where and how the Website is running and we redirects to the right server

Another very important thing to have in mind is that with this new approach you don’t need to use Azure storage directly you have a feature named storage Controller that allows an easy use of the Azure storage capabilities.

But what are the building blocks behind the scenes of all the deployment methods and how they behave. Allied with all we had seen until now you have a lot off abstration layers supported by worker roles tahe lead us to the Antares block diagram we present bellow

copyrights of image to Microsoft

Other thing to be in mind is that WEbsites running in the diferent Webserver’s run under a W3WP.exe process with Full trust. Azure Website give us an abstraction of all this Roles and Blocks.

Scale Websites

One off the good things that the new dashboard offer’s is the capability to scale, here is something that you should have in mind you Web solution can be hosted in:

  • Shred environment;
  • Reserved environment;

Scaling come in two flavor’s to, you can scale in the multitenant environment.

Or i can scale in a dedicated environment or scale to a reserved instance (when passing to reserved we are exploring the capability of our web application to explore all the resouces of a webapplication)

Is also possible to have a dedicated enviroment with different application building this way your dedicated Multitenant Enviroment.

To go to the scale options you need to go to websites choose your website and choose scale on top menu

When we are talking about Reserved instances the sizes of the machines we can choose are based on the following table

Deploy scenarios

you can use Azure websites as far as i know in the following deployment scenarios

  • FTP
  • GIT
  • WebDeploy
  • TFS Deploy
This is mutch more then what we could do in the past.
WebRoles vs Azure Websites
When using what for web scenarios? Is a question  that many of us can make, Microsoft had presented in the Teched event the following table that explains exactly the differences between the 2 aproaches and the reasons for choice of each one of them.

Final Note

I Hope this post had been a help to show what’s behind the scenes of some of new things about the Azure website, what the options and why we can consider this Azure Feature a great and smart hosting option.

To know more about Azure websites follow the link:

http://www.windowsazure.com/en-us/home/scenarios/web-sites/

Thanks all for the attention have a good deploy and usage of this feature.

Feel free to ask

Advertisements
Comments
  1. Very energetic blog, I liked that bit. Will there be a
    part 2?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s