DotNetNuke (DNN) using a pool of Cloud reourses and Storage for backups to enable a truly unique powerful full DNN experience with the all the Power and flexibility of Windows Azure behind it. Sounds like a dream? Guess not if you are a competitor. But for the rest of us – Wow!
If you’re familiar with ASP.NET, you might have come across DotNetNuke (DNN) before. First released in 2002 as an open source fork of the original ASP.NET IBuySpy Portal, a community quickly gelled around the concept and it expanded to become the most-downloaded open source .NET CMS. DNN Corporation was formed along the way and acts as a steward for the open source code and offers commercial solutions.
The new Windows Azure based DNN Cloud offering
DNN has now launched their own Windows Azure based Cloud offering which is a great example of leveraging Windows Azure features to build a managed service. The DNN Cloud Team utilized a collection of Windows Azure services to both deliver their product and a simplified management console for support and operations staff.
Each device is a connection between a Windows Azure Storage Account, a SQL Database and multiple Cloud Services instances. The Windows Azure load balancer assigns the traffic and the application and content files are kept in Windows Azure geo-redundant storage while the Cloud Services instances are treated as volatile and can be scaled up and down according to customer needs. The overall system uses Windows Azure Table Storage, Message Queues and Web Worker roles to handle provisioning and maintenance of the Customer sites.
The setup of your Web Site on a DNN Cloud instance
Any Web application naturally has an installation process. You can spend many hours simplifying this and making it as easy as possible, but the most effective thing is to remove installation altogether. Windows Azure Cloud Services are ideal for installation elimination; once a package is defined endless amounts of the same application can be deployed without repeating the installation process.
The DNN Cloud Team took this further – there is still a delay in the deployment of Cloud Services devices, so they created a ‘Device Pool’ concept, where deployed devices are kept ready to be assigned to Customers. Once a customer creates an account, the device is assigned to the customer and 30 seconds later, the Customer has their new website, fully installed and ready to go.
You can experience this yourself by visiting the DNN Trial Signup page, which uses the same provisioning process, but delivers a trial device on Windows Server Websites.
If there is a burst of activity and the pool empties, prospective customers go into a queue and the devices are delivered as the system catches up with demand.
Windows Azure empowered backups
Applications also have the need to have a simple backup and restore process and the DNN Solution is to leverage a Web Worker Role to create backups on a schedule as well as on demand. The database backups are combined with the application files to produce a single compressed backup which can be restored on demand by the Customer. You access this feature on the Cloud menu on the top right of your DNN admin page.
This is all handled through the same Application Administration interface as is used to manage content, extensions and user accounts giving the solution a seamless feel which works well.
The presence of easily-restored backups provided the ability for the DNN Team to create instant staging environments of a Customer device, by allowing a restore from a production backup to the staging device. The staging device creation process also updates the application to use the temporary domain name created and allows Administrators to easily switch between the two.
The creation of a staging environment also provides the ability to easily test out in-place Application Updates which then allows Administrators to easily keep their sites up to date and take advantage of any security fixes and new features being released over time.
The DNN Cloud Solutions are interesting both as a case study and as a way for Developers to quickly leverage a Windows Azure-integrated platform for developing projects. The extensibility of DNN is well known and supports all of the latest ASP.NET technologies, having recently standardized on using WebAPI as the underlying service framework. It’s a platform that has kept up to date and offers everything a developer needs to build awesome sites and applications, now made even better by being available on Windows Azure.
Now head on over to the DNN Trial Signup page and have some fun!
No comments yet. Be the first!