Presentation Notes from Tech Days 2010 Toronto

On Wednesday October 26th, I will be presenting the Windows Azure Session at Tech Days 2010 in Toronto, Canada. As a summary to my presentation, I am providing the links to not only the resources for my talk, but some of the concepts that I elude to in my presentation.

Act 1: The Brownfield

I can’t wait to see the glowing smiles in the audience when I announce that it is possible to Migrate your legacy applications to the Cloud.

However to take advantage of the benefits of Cloud Infrastructure, some code changes may be necessary. Not to worry, here are a few links that will help you along the way:

Known issue in Development Fabric

During the initial creating of the Nerd Dinner Demo, I ran into a known issue with Development Fabric, where the DotNetOpenAuth Library would cause the DevFabric Load Balancer to crash. This was due to the actions of an extension method in the ASP.NET MVC Framework, luckily there is a work-around.

Guidance on Migrating Legacy Applications

Act 2: The Greenfield

Whether you’re working on a brand new Application, or retro fitting your existing Application with some new practices there are a few things that you’ll want to be aware of.

Using Storage Services

Making Storage Thread Safe with SyncLock

When using Managed code to access Storage Services, it is a Best Practice to use a Sync Lock to surround the code which is attempting to Create a Blob, Table or Queue. Here’s a small sample from Building your first Windows Azure Application on Channel 9 Windows Azure Platform Training Course.

static bool _isInitialized = false;
static object _gate = new object();
static CloudBlobClient _blobClient;

private void InitializeStorage()
{
	if(_isInitialized) return;

	lock(_gate)
	{
		// Initialize Storage
		_isInitialized = true;
	}
}

Enforcing Access Rights on Blobs

Depending on your application it may be necessary to Set Access Control for Containers.

_blobContainer.SetPermissions(new BlobContainerPermissions()
{
	PublicAccess = BlogContainerPublicAccessType.Blob
}); // Set the Blob Container to Allow Public Access to Blobs

Act 3: Deployment

Intellitrace on 32-Bit Operating Systems

If you’re still running a 32-Bit Version of your Operating System, the Intellitrace tools are disabled by Default for the Cloud. In order to be able to benefit from Intellitrace on your machine you will need to download and install Hotfix: KB983301.

Next Steps

Windows Azure Platform Book by Apress Programming Windows Azure by O'Reilly Cloud Computing with the Windows Azure Platform - Wrox Publishing CoDe Magazine MSDN Magazine

If you’re interested in Getting Started with Windows Azure, These Links can get you going:

Resources

For Best Practices and other Training review these links: