As you may see in the title, I will be starting a series on modifying my CarTrackr sample application to a cloud-based, Windows Azure application. At this point, I don't know if it's easy nor do I know what it takes to achieve this goal. I only have some assumtions on how CarTrackr can be converted to a cloud application.
This post is part 1 of the series, in which I'll describe the architecture of Windows Azure and what I think it takes to convert my ASP.NET MVC application into a cloud application.
- Part 1 - Introduction, containg links to all other parts
- Part 2 - Cloud-enabling CarTrackr
- Part 3 - Data storage
- Part 4 - Membership and authentication
- Part 5 - Deploying in the cloud
At Microsoft PDC 2008, the Azure Services Platform was announced in the opening keynote. Azure is the name for Microsoft’s Software + Services platform, an operating system in the cloud providing services for hosting, management, scalable storage with support for simple blobs, tables, and queues, as well as a management infrastructure for provisioning and geo-distribution of cloud-based services, and a development platform for the Azure Services layer.
You can currently download the Windows Azure SDK from www.azure.com and play with it on your local computer. Make sure to sign-up at the Azure site: you might get lucky and receive a key to test the real thing.
From my previous blog post: "CarTrackr is a sample application for the ASP.NET MVC framework using the repository pattern and dependency injection using the Unity application block. It was written for various demos in presentations done by Maarten Balliauw. CarTrackr is an online software application designed to help you understand and track your fuel usage and kilometers driven."
That being said: what will it take to port this onto the Azure platform? First of all, a new logo applies. I now want a logo with clouds in it. Since it's still no official release, I'll also keep the "beta" label in place. Looks nice, eh? :-)
Seriously, here's what I think needs to be done:
|Concept||Current implementation||Azure implementation|
|Data store||Repository pattern on top of Linq to SQL.||Repository pattern (whew!) on top of Azure TableStorage.|
|Membership||ASP.NET membership||Windows Live ID or Cloudship|
In addition to the above table, I'll also have to make the CarTrackr solution aware of Azure. Next thing: make Azure aware of ASP.NET MVC... I'll also have to deploy this application in the cloud at the end. Stay tuned!
This is an imported post. It was imported from my old blog using an automated tool and may contain formatting errors and/or broken images.