Windows Azure Websites are very handy to get a website quickly available. You can choose from a gallery of products. This gallery contains Blogs (WordPress), Content management systems (DotNetNuke), Wiki’s etc. And if you look closely their not all .NET based. Some need SQL Server database and others need MySQL. No problem at all. With a few clicks your website is up and running.
But if you have a existing website, that one can also be hosted on Windows Azure websites. Also with a few more clicks you are up en running. Does the Website need to know about the Windows Azure platform? Nope, not at all. No changes are needed to your website and can be deployed as it is to Windows Azure. And deploying updates can be done by publish them like you do on your ‘own’ webserver.
We are not talking about a lot of data. There are events and events have sessions and a session has a evaluation. There are no difficult relations between the tables. Typical case for Windows Azure storage tables. Also from a cost perspective it is. As said, it is not a lot data. Let see: 3 events times maximum of 20 sessions times 150 visitors, that will be far below the 100 Mb of the smallest Windows Azure SQL Database. The price difference between storage tables and SQL tabellen will be big. (NB I realize we need SQL server in some case, but I also think we use it to often without real thinking.)
The data for the apps will be exposed via WebApi. So the apps have a simpel REST interface to do the get and posts and get JSON back. And those REST services are part of my Windows Azure Website.
Can it be done that easy? Yes. All you need are these two NuGet packages.
And this code. The connectionstring to Windows Azure storage is in de Web.config.
The rest of your code is like you always use it with Windows Azure storage tables.
And potential grow of my apps? Windows Azure Websites can also scale (more instances) and/or bigger machines.
And what if I need a backgroud proces to do some BI on the evaluation data? Then I could make a WorkerRole for it. I could change the Windows Azure Website to become a Cloud Service. The setting for storage will move from the web.config to the Cloud Service configuration. Nothing has to change to the Web Role. The Worker Role needs to implemented.
Great isn’t it? Windows Azure. It grows to your needs, start small and grow sky high.