Learning to build on Azure: One ISV's Experience
- Posted: Dec 15, 2008 at 7:22 PM
- 85,892 Views
- 2 Comments
Loading User Information from Channel 9
Something went wrong getting user information from Channel 9
Loading User Information from MSDN
Something went wrong getting user information from MSDN
Loading Visual Studio Achievements
Something went wrong getting the Visual Studio Achievements
Right click “Save as…”
While at PDC back in October, Ryan Dunn and I had a chance to sit down with Shan McArthur from gold ISV partner ADXSTUDIO to discuss what he'd learned from his experiences with the Azure Services Platform.
Shan is a serial early adopter and Ryan and I (and a few other Technical Evangelists) have been working with him and his team for some time to help them along the way.
In this video Shan discusses some of the things he's done that helped him get there faster. Amazingly the team was able to get the ADXStudio Content Management System (CMS) ported to Windows Azure in a lightning fast 3 weeks.
He ported ADXSTUDIO CMS and their
CRM Developer Toolkit so that they are now able to run in either on-premises, partner-hosted or Windows Azure. He also took advantage of Microsoft SQL Data Services (which is Ryan's favorite technology
) to store the content for the CMS.
Shan had a lot so say about what he learned when build his cloud-capable and scalable app. His app originally had a dependency on numerous Microsoft technologies including IIS, ASP.NET, SQL Server, Active Directory.
He’s now betting of both worlds. He knows many of his customers will continue to use traditional deployment methods but for many more Windows Azure will be a great fit.
Some of his comments:
Shan’s team went with SQL Data Services (SDS) for data storage. He notes that Windows Azure also has some storage capabilities. Shan discusses why he made the choice he did to use SDS:
Since SDS is not full-fledged SQL Server there is a certain amount of re-architecting that Shan needed to do to ensure that his app was portable. He made some design decisions very early on in development that made this easier:
Shan goes quite deep into the code showing how he takes full advantage of the provider model.
He also spends some time talking about how he tackles identity. Again because he uses the membership provider model he can switch identity based on the need of the application (Active Directory, Live Id, Forms Auth, etc).
Shan’s team does a lot of work with Dynamics CRM as well. Shan’s team put together a very cool conference self-service registration demo application that uses Azure on the front end with the site content stored in SDS and the dynamic content coming directly via web services from Dynamics CRM. So, in the same way that Dynamics CRM can be used to build line-of-business apps that run on-premises, partner-hosted or in Microsoft data-centers with CRM Online, they can build customer facing self-service web sites that run in any of the 3 hosting models (on-prem, partner-hosted, Windows Azure). For Shan’s code it’s just a change in a web.config file.
I even managed to get Ryan on film paying off Shan for all the kind words he has for the evangelists that have helped him out. Gosh, I hope Legal doesn't see this.
Seriously though, Shan has certainly done a great job of taking advantage of all the
resources we provide to ISVs building on our platform. Thanks for
the kind words and great product, Shan.
Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation,
please create a new thread in our Forums,
or
Contact Us and let us know.
Follow the Discussion
Oops, something didn't work.
What does this mean?
Following an item on Channel 9 allows you to watch for new content and comments that you are interested in. You need to be signed in to Channel 9 to use this feature.What does this mean?
Following an item on Channel 9 allows you to watch for new content and comments that you are interested in and view them all on your notifications page.sign up for email notifications?
In fact the whole of Azure smacks of a new API just for the sake of locking in developers to Microsoft's hosting offerings. I can see it has value in terms of some people may need to provide a very scalable web application and don't have the expertise to write a high quality multi-server applications. But for people that do know how to do that, what does Azure offer? Even if I don't own enough servers I can rent them from many hosting providers. If I'm in a situation where I need a large capacity only some of the time (and this is a much smaller class of customers), I'd rather use an Amazon EC2 style service where I rent a standard Windows Server image on a per-hour-per-CPU basis because I know I can write the same code and run it on any server. Azure just ties me down and unless Microsoft offer to licence the technology to other hosting providers, that is going to rule it out for a majority of potential customers.
SQL Server Database is a relational database not a generic storage system. In relational databases the emphasis is returning and manipulating direct relationships. You can store Blobs or anything else in the intersect of the relational attributes but you cannot manage this as an indexed file system, for example. In the case of SDS it is about moving large amounts of data quickly and efficiently in bulk between locations. Simialr to the indexed file system where we could store random pictures, documents and other items together under some search criteris SDS uses a simplified attribute structure to move and retrieve this type of information.
In the case of EC2 this works well for an individual program or when I need storage for a specific problem. When managing many processes that are coordinating together coding this in Amazon's API is a more difficult process. ASP, BPO, and SaaS ISV's have to manage this next layer of difficulty. Distributing the results back to your customer is more than renting a box. Azure attempts to solve some of these issues.
That being said the original Azure is targeted to MS data centers to provide services. I do not think that Micorosoft is going to go through another round of anti-competitive lawsuits making that their only option. They could make it more convenient to use their centers but still enable all the services to other providers. We shall see how this is handled moving forward.
Microsoft has been the expert when it comes to this middle arena between applications and the infrastructure. That is their core capability and one that Azure looks primed to take advantage of. If I were to look into the next couple of years the idea of writing an interface between Azure and Amazon's hosting services would be right within this "sweet spot".
Remove this comment
Remove this thread
close