Performance Tuning DNN with PageBlaster
Posted by Tom on Wednesday, August 22, 2007 to DotNetNuke, SEO, DNN Module Review
Thanks to John Mitchell of Snapsis Sofware, you are reading my first ReviewMe review. And to play by the rules, I hereby disclose that this is a paid blog post and I made a whopping $15.
The timing of John’s request to review PageBlaster for DotNetNuke could not be better, as I’ve come across the module numerous times in my DNN SEO efforts, but I’ve never taken the time for a closer look. We’ve also considered the module internally here at Seablick Consulting to achieve valid XHTML of DNN based websites.
What is PageBlaster for DotNetNuke?
At its core, PageBlaster acts as a performance booster of dynamic asp.net-based websites by compressing, caching, and saving static “copies” of dynamically created web pages to memory and/or disk. Once a page has been saved, it will be served from disk on subsequent page requests as opposed to being assembled “on the fly” over and over again. This decreases page load times and improves the overall performance of a given website or web application.
But there is more. Implemented as an HTTP Module, PageBlaster for DNN touts itself as a “Content Delivery Engine,” which “makes it possible to get complete control over all of the output of all your website’s dynamically generated pages (quoted from the module’s manual.) The module features a powerful replacement engine and is capable of pulling content from the file system and another website. It also has the ability to transform XML feeds.
Module Installation and Configuration
I found the installation instruction rather confusing (especially for the beginning DNNer) and out of order for what is a fairly straightforward process.
Installation step number two asks to “copy the Snapsis.PageBlaster.config file (located in DesktopModules\Snapsis\PageBlaster\Config) to the root of your site and change the settings if needed.” Well, at this point I don’t even have a Snapsis folder in my DesktopModules directory since I have not uploaded the private assembly (PA) via DNN Module Definitions | Install New Module yet, which according to the installation instruction is step number three. So either switch step number two and three or upload the Snapsis.PageBlaster.config that comes “outside” the PA to your website root.
As mentioned above, we are dealing with an HTTP Module here and it therefore requires an entry into web.config’s <httpModules> section. Also make sure to remove or comment out DNN’s native compression HTTP Module in the same section.
Once the module is installed correctly, it goes to work right away according to the default settings for caching and compression specified in Snapsis.PageBlaster.config. Up until this point I’ve only tested the module on a fresh install of DNN with a few test tabs, but I did notice faster loading pages almost immediately.
For finer control and to take advantage of additional features such as virtual paths (friendly URLs) you’ll have to drop the module on every page of your website that you would like to configure. The Ajax-like configuration interface is clean and intuitively laid out. It is divided into “Page Setup” and “Replacements.” The page-specific settings are fairly self-explanatory. Where the module really shines is the build-in replacement engine, which works similar to the “find and replace” function that you may be used to from application such as Microsoft Word or Excel. Replacement rules that you create are broken down and saved into “Page Rules” and “Saved Rules” and make heavy use of regular expressions. No need to feel intimidated though, as the “Saved Rules” folder comes stuffed with the most commonly used rules for a variety of goals such as making a page XHTML compliant. The ability to combine replacement rules is where the real power comes from tough and essentially creates a “scrubbing filter,” which ultimately “cleans” your pages from non-compliant markup.
For details on everything I’ve touched on above and numerous other features I did not mention, I recommend the PageBlaster reference manual and the Snapsis support forum. As a former core team member, John Mitchell is a recognized figure in the DNN community and one of the most active participants on the DotNetNuke forums.
So far I’ve only scratched the surface of what the module is capable of and I’m looking forward to implement it here on seablick.com. Please share your experience with Snapsis Software and PageBlaster for DotNetNuke in the comments below.
Permalink
5 Comments
RSS feeds
Email updates