Windows Azure - porting a .NET web application to Azure

I was hoping someone could answer some brief questions about Azure windows. I know this is a bit lazy, but the Microsoft websites covering Azure seem to be aimed at getting semi-professional projects and full of business metrics - they never really give a good overview of the how.

I have an ASP.NET web application that requires some work to help with scaling (there are some processes like spider and a rather large database, as well as a lot of calls for external web services).

My questions:

  • From a development point of view, how easy it is to port an application from a standard type of iis / sql server configured on Azure. There are a lot of coding. I got to the training video in which you program "fabric", etc. Is it really possible to convert an application to Azure?

  • I heard that you can run instances of Windows Server 2008 R2 in Azure - does this mean that you don’t have to program using the specific Azure SDK and just move the iis / sql server configured for azure and immediately take advantage of scalability?

+6
azure azure-web-app-service
source share
2 answers

You scored a few points: training, porting, scaling and managing virtual machines.

Training

You should probably watch some of the videos in MSDev . The Windows Azure Fall 2010 series is the latest. Note that in order to run the application on Azure, you need to understand Azure Fabric and its related services, such as diagnostics and role management.

Porting

You need to look at what you are doing outside of the main asp.net, for example, caching, session state management, security, third-party DLLs, COM, registry access and any other functions of the administrator level. Today, with the SDK 1.2, you cannot manage the registry or run MSI. I have fooobar.com/questions/875696 / ... about some areas where you might run into problems. Regarding SQL Azure: some features, such as CLR support, are not implemented, and you will not have access to some functions at the system level. Details of the differences can be found in the white paper on the Azure SQL site .

With the new features introduced at PDC 2010, you can overcome almost all of these problems:

  • Session state can be hosted in AppFabric Cache. It will just be a configuration change to your configuration. This cache will be available across the entire deployed network of instances that allow you to scale.
  • Access at the administrator level is possible in administrator mode. You can start MSI and change things like the registry when your role instances load.

scaling

You will need to carefully examine how your application handles scaling. For example: you may have a bottleneck if all server instances try to work simultaneously with the same resource, causing locks. The usual Azure template is to put work items in a robust Azure Queue and have instances of the background worker role use these work items asynchronously.

Today, Azure does not provide off-the-shelf session state management tools (such as storing state in SQL Server). However, there is a downloadable sample on the SQL Azure Blog that works great with SQL Azure. As mentioned above, the new AppFabric Cache feature will provide session state management, so you'll get a turnkey solution soon.

Virtual machine management

The role of the VM is announced in the PDC. In essence, this will provide you with the ability to use a locally created Windows Server 2008 R2 image and move it to Azure. You will need to install Azure extensions that allow you to control the image using azure fabric.

However, there is a trade-off: your virtual machine will not use OS updates and patches: you will be responsible for managing them (via the exploded disk). Azure fabric will still control your health of the virtual machine, and reboot it or move it if necessary. I would recommend trying admin mode first, so you can still use 100% of Azure services.

+6
source share

From the developers' point of view, there is not much work involved in moving an existing ASP.net application to Azure. You may encounter several problems, such as session state and caching, however both of them can only be resolved through configuration. SQLAzure will provide most of the functionality that you get with standard SQL Server, and you can use the SQLAzure migration wizard to move your database to the cloud.

In PDC10, they announced the new role of the virtual machine, so I assume that this is what you are talking about. So yes, if you have an existing installation running on Windows Server 2008 R2, you can virtualize it and move it to the role of a virtual machine.

It was also announced at PDC10 that WebRoles will now work with full IIS7, so you can go down and get IIS infected if you want, without having to follow the path of the VM role.

+2
source share

All Articles