We found that many users still ask us about what is the advantages use Windows Azure than traditional shared hosting? Both of them have their strength and weakness. In this article, we will describe plus and minus using Azure and traditional shared hosting.
Difference Between Azure Hosting Services and Traditional Shared Hosting
Cloud computing can be loosely defined as a technology in services are provided over the internet/network to clients/users, in other words, it’s a method of computing in which the hardware producing the service is remotely located and the service is given on demand, all that’s needed from the client is a browser, internet/network connectivity and maybe a credit card to make the payments for the service rendered, just joking about the credit card bit, some cloud services are free of charge e.g. facebook, yahoomail, gmail etc yep the free internet services and websites that you know and love are actually implementations of cloud computing.
Microsoft Azure services
Microsoft Azure Services implements Platform as a server and according to Wikipedia provides an API built on REST, HTTP and XML that allows a developer to interact with the services provided by Windows Azure. A client-side managed class library is also provided that encapsulates the functions of interacting with the services. It also integrates with Microsoft Visual Studio so that it can be used as the IDE to develop and publish Azure-hosted applications.
It provides a cloud operating system called Windows Azure that serves as a runtime for the applications and provides a set of services that allows development, management and hosting of applications off-premises.
Now ordinarily the thought of having the power of a thousand CPUs and infinite storage at your disposal should be dizzying to any developer but there are some important constraints to consider
Azure is primarily created to provide a powerful application development environment, this is great, however the downside is that you don’t have loads of flexibility, you don’t get have a machine at your disposal which you can remote into and install apps on i.e. Webserver(s), SQL Server 2008 etc
There is news that Microsoft might implement IAAS, meaning developers would be able to have bare machines to work with, install software on and tweak to their hearts desire.
– Great environment for running and testing your .net applications
– Cloud operating system and db integrates directly with the visual studio 2010 IDE
– Not suitable as a host for simple website
– Can’t install any other software, plugins etc on the platform
– Does not offer root access to bare machines
Is a fairly common technology and can simply be described as webserver space for rent. A webserver is the combination of software and hardware that serves web pages and related services in response request made by internet users via browsers and software. It’s simple enough, for a monthly payment they (the hosting companies) host your website and other services which you provide to your website visitors, its important to note that the servers are not dedicated and a single server will host multiple customers.
The servers usually have windows server or a linux flavour (Fedora, Ubuntu) as operating system and come with many useful web development tools and DBs installed e.g. ASP.NET, IIS, SQL Server, MYSQL, Apache, Ruby on rails, Pearl etc.
It also means what affect your server cohabitants affects you, if a website on your shared server is being dos attacked, its likely going to slow the entire server down including your running apps or website. Also you still don’t get finely grained control in that you don’t have root access to the server, you can’t install software, you have to use what the service provider offers.
– The websevers tend to have website and app dev tools preinstalled.
– Monthly payments tend to be very low
– Any attacks on a website that is sharing a server can slow down the entire server thereby slowing all other websites hosted on the server.
– The is no access to the root of the server and software can’t be installed on the server by the user
Important Factors Need to be Considered
Server usage. With a shared hosting, servers are shared resources, and there’s no way to figure out (or limit) the number of tenants sharing a given server with your app. With Azure, a given server, with its 8 cores, is allocated to specific VMs. At most, 8 virtual machines will be deployed to a given server.
SLA. With a shared hosting, there’s no built-in way to scale your app, or to ensure availability with multiple servers running your app. With Azure, you can easily scale to 2 or more instances, ensuring at least 99.95% availability.
Durable storage. Aside from SQL Azure (Most .NET hosting providers provides SQL Server hosting), Azure provides tables, blobs and queues, each triple-replicated. Further, Azure can deploy a new SQL Azure instance in a few seconds. SQL Azure is also triple-replicated.
Monitoring and diagnostics infrastructure. Azure provides a diagnostics infrastructure to capture things like performance counters, queue sizes, custom log files, etc. and consolidate them into easily accessible/queryable table and blob storage. You can then build app-monitoring apps around this set of diagnostics. Also, the Azure fabric itself monitors your application’s health. In the event of a failed server, for instance, your app is restarted on another server automatically.
Additional services on-demand. In Azure, you have access to several consumable services, such as SQL Azure, service bus, scalable storage (blobs, tables, queues), access control, caching, and Reporting Services.
As we post above, both of them have their own strength and weakness. It depends on your requirement. If you only host simple site, then we would recommend you to just use traditional shared hosting. There are many shared hosting provider that offer reliable ASP.NET hosting with SQL server support, for example ASPHostPortal and HostForLIFEASP.NET.