“Azure Website 101” is a series of posts where I will be highlighting posts that talks only on Azure Website. What it means to have a website running on Azure, Whats the difference between the traditional file hosting system, if the azure website is cheep, affordable, maintainable, what are the limits, constrains that you get on azure website everything… The whole series is divided into mini blogs in which I will be focusing a specific topic targeting Azure Website.
Enough intro, lets dive into the actual topic.
If you are total new in Azure you probably asking yourself what the hell is Azure Website? How its different then the site you created last week. Well, this is indeed a good question. Two and half year back when I started with Azure I also had this question popping on my mind.
So, let me explain what is Azure Website, what you can do with it, what are the constrains it throws to you etc.
In short, Azure Websites is a Platform-as-a-Service (PaaS) that enables you to build, deploy and scale enterprise-grade web Apps in seconds. Since, its a PaaS that means you can literally focus on your application code, and let Azure take care of the infrastructure to scale and securely run it for you. Please don’t get confuse. I have seen lots of folks thinking that since Azure is managing all the underlying things that means they probably don’t have control on how it scales in need, what frameworks they use, what languages they prefer, weather to monitor logging or not and so on. That is not the case actually. Azure portal gives you the power to configure lots of settings right from the management portal.
It ensures a high-availability environment with automatic patching. Web apps deployed with Azure Websites are isolated and are hosted in VMs dedicated to your applications – ensuring predictable performance and security isolation.
Another good feature that Azure Website offer is WebJobs which enables you to run any program or script on VMs managed by Azure Websites. You can run jobs continuously or on a schedule basis. For say, you want to do a batch processing to send some bulk mail each night or lets say you want to compress all the uploaded images. Azure Website gives you the flexibility to do such stuffs easily.
Azure Website offer Web Stacks to its developer. This mean Azure Website allow you to go with your favorite language, You can come up with ASP.NET, Java, PHP, Node.js even with Python. If you want to enjoy the flexibility of Azure with with CMS then you are lucky to have Wordpress, Drupal, Joomla, Umbraco, DoteNetNuke.
If you don’t feel comfortable and secure to store your data in Azure you can point back to your on-premise data center. With Hybrid Cloud model and VNet it’s easy to access your data securely from your on-premises data centers – or anywhere else in the world.
The best thing I like about Azure Website is that Azure allows me to create multiple private testing and staging environment for web apps. This allows to perform testing without affecting the live site. Once the testing is complete we can swap the production site with the testing one with no downtime. This ensuring the best customer experience.
Azure also let you backup your site and its database. So, in case of system failure or natural disaster you can restore your azure website easily. You can backup your website in the same region or in a different region.
In addition to these facilities Azure Website lets you Set up continuous integration and deployment workflows with VSO, GitHub, TeamCity, Hudson or BitBucket.
Last but not least azure lets you to use variety of data solutions in your web app. You can use Microsoft SQL, MySQL, DocumentDB, Search, MongoDB, Redis and Azure table storage to store your data.