Hosting BlogEngine in the Cloud (Windows Azure, CTP)

Topics: ASP.NET 2.0
Sep 9, 2009 at 8:51 AM
I've been evaluating BlogEngine with a view of using it in the cloud on Windows Azure, once the CTP finishes in November, and unless I've overlooked something in the current release, will it be possible for a Cloud version to be released by November so that when we transfer our activities from CTP to commercial, we'll be able to jump in with BlogEngine boots and all. (As I say, 'unless I've overlooked something'), BlogEngine presently needs to be hosted in its own application folder, yet in the Windows Cloud Environment it would be ideal if it was merely in a BlogEngine subdirectory of the website inheriting from the website's own web.config in the root folder. There are 3 things that I think would either be useful, or are already important: Already, BlogEngine can utilise the Windows Azure roles and membership providers to utilise Tables, or it could alternatively use SQL Azure ~ ideally, however the use of the Windows Azure tables (as opposed to SQL Azure database) means that anyone already a member of the parent cloud site which utilises the Windows Azure Tables for its roles and membership, will by default already have their own blog and merely need to login. Until a Blob XML interface is created, BlogEngine would prersently need to use SQL Azure as it is impractical to use the XML facility ~ in the Windows Azure host, deployments are swapped in and out when changing something and this means that if the XML files were in the appdata folder, they'd be swapped out with the new deployment ~ hence needs to either utilise SQL Azure, or a new Blog XML interface. These are just a few thoughts off the top of my head before my first cup of coffee of the day and launching into my Silverligtht headspace, but one thing is for sure, I think that the Windows Azure cloud needs a blogging engine that can merely be dropped into a non-root folder of the host, and configured either for SQL Azure or Windows Azure Tables membership and roles, with the data itself not in XML in the host but either capable of being stored on Sql Azure, or in Windows Azure ~ in the latter, either in Windows Azure Tables, or as XML blobs in a blob container. Hmmmn, I smell the coffee! Anthony
Sep 9, 2009 at 3:43 PM

Funny you should say this, i was thinking along the same line a couple of days ago.

Until Azure is out of CTP i was looking to host the app on shared hosting with the data stored in AmazonAWS SimpleDB or Google AppEngine.

More from a technical challenge than for practical reasons, but i guess once the steps are known to do this, it should be easy to move to Azure...

Not keen on ther Azure pricing structure though. 1GB data costs $9.99per month - expensive compared to the Amazon and Google Appengine offereings... If only google AppEngine would run ASP.NET...



Sep 9, 2009 at 5:28 PM

I agree with the pricing issue Joe, I think when it comes to Azure it comes down to why you want to be there, so in that sense its best suited for entreprenuerial applications where you've some vision of things going ballistic, hence want Azure because of its capacity to dynamically scale upwards without any glass ceiling. But that's why I'm hoping that someone might be working on it now during the CTP, because at least the development costs are free at the moment as there aren't any strings attached.

What I've been thinking about BlogEngine is that its perfectly suitable to use with its current front end, but as time passes, to adapt the front end to Silverlight on a track towards a fully integrated silverlight plugin front end API ('scuse the tautology), and if there are any interested people in being part of a project like that, I'd be happy to be a contributor.

It seems to me that the different BlogEngine projects should modularly interface towards the following pathway opportunities:

  • Choice of current front end on its present evolution track, and Silverlight front end (and there may be some enthusiasts who want a Flex/Flash front end as well)
  • The front ends should be oblivious to the backends so that it doesn't matter which backend is chosen (hence a WebService or handler interface that formalises that boundary)
  • Backend offerings of Azure Cloud or Classic

I'm only thinking out loud here, but I know that I will want a Silverlight Front end blogging client interface to integrate with my current project (which has a Blog-Out-Of-The-Browser need, hence Silverlight OOB will suit my need, and Adobe Air for those with a similar but Felx/Flash need). Hmmmn.