The Windows Azure platform is the Microsoft’s cloud platform that implements the model PaaS. Tools of this platform provide the functionality for creating a solution that includes cloud platform with own cloud services for Software development or other purposes. So let's start with the main advantages of using Microsoft Azure. The most significant advantages of cloud virtual machines over virtual machines in the local infrastructure are listed below:
• The minimum period of occurrence. If serious planning and experience are required for downloading local information on Hyper-V or VMWare, Windows Azure can deploy virtual machines in several minutes by abstracting the user from the technical preparatory work.
• Low capital expenditure. Unlike Hyper-V deployment, which can cost thousands of dollars spent on hardware resources and licenses after finding a specialist, in Azure you can simply turn on the virtual machine, and pay less.
• Unprecedented fault-tolerance and availability. Uptime (the time of a server work without crash within a certain time) of clients with local infrastructures rarely reaches more than 95% per month. But after that system deteriorate. In this sense, Azure has a wonderful uptime.
• Throughput. Virtual machines' bandwidth is still increasing, that allows competing with loсal infrastructures.
• Global remote access. Of course, in traditional infrastructures, sometimes there is a Remote Desktop, but you always have to configure, but here is a static IP, etc., especially if there are several servers. Azure provides preconfigured FQDN for each virtual machine.
• No concern about the license. If the local virtual infrastructure will always have a license problem, then a virtual machine in Azure abstract the user from this, including the license cost in the virtual machine’s cost. Therefore, Azure virtual machine is fully prepared for movement to Production.
In addition, the Windows Azure platform is part of the "cloud" of Microsoft, providing a set of services.
1. Cloud apps represent a set of continuously available and highly scalable services hosted in the cloud of Microsoft, which customers can use directly. For example, these include Bing, Windows Live Hotmail, Office Live, etc.
2. Software services are a set of SaaS – services, such as Exchange Online, SharePoint Online, Office Communications Online, etc.
3. Platform services are used as a public cloud that developers can use to implement new generation solutions. Services include SQL Azure, AppFabric, and Windows Azure.
4. Infrastructure services are a set of components of Windows Azure platform, providing support for cloud infrastructure resources.
The Windows Azure platform includes:
* Windows Azure – “cloud” operating system which provides computing resources, data warehousing, and management services.
* SQL Azure - database, which provides the basic functions of MS SQL Server for data storage, is provided as a service.
* Windows Azure AppFabric - software modules that provide communications (Service Bus) and access control. These modules are used to provide interactions between applications and user applications of the cloud.
Examples of application in Windows Azure for business
1. Accommodation of web application in the cloud. Meanwhile, the infrastructure of a cloud sends the client request to one of the servers. In this case virtual web server, having received the request activates the appropriate code.
2. Parallel data processing. In this case, when processing large amounts of data, a client accesses a web service by using the WPF application. Request to process data is placed in the queue Azure Queue. Processing is carried out asynchronously. The result is stored in Azure Table.
3. Association of local computing and cloud-based resources.
You can also define when you need to use Azure Cloud System:
* Implementation of a new project (startup). The main advantage of using Windows Azure technology, in this case, is that the implementation of startup does not require large-scale IT infrastructure. The developers will pay only for actually consumed resources. The app will scale Windows Azure depending on the number of users, eliminating the risk of overpaying for the maintenance and support infrastructure in the initially small number of users.
* Creating a SaaS version of local .Net application. Windows Azure provides a standard .Net environment and relevant functional support and maintenance of the application. In this case, there is no need to maintain excessive IT infrastructure.
* Creating an application for corporate clients. Windows Azure allows you to deploy the application of required complexity and functionality. Thus, the greatest effect from using this platform can be achieved in the presence of time dependence of using the application by customers for paying for actually used resources of the platform.