First time here? You may want to check out the blog archive, subscribe to the RSS feed, sign up for free email updates, or follow me on Twitter. Thanks for visiting!

Performance Tuning DNN with PageBlaster 

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.




Comments

ech01 ech01 says:

If you host at webhost4life, this module is absolutley essential.

John Mitchell John Mitchell says:

Thanks for the review Tom. I see I do need to work on the install instructions a little. In my defence (and not a very good one), those instructions were originally created for the Free PageBlaster version that do not install as a DNN module.

I have created a special coupon code for your readers. Enter Seablick in the coupon field for PageBlaster at Snapsis to get a 25% discount.

Thanks also for the comment about WH4L echo1. Web Hosts should really like this module too since it seriously reduces the load on their servers.

Nelson Fernandez Nelson Fernandez says:

This module has opened door for my site that would have been major headaches otherwise.

For example, you can use it to replace custom tags with user information. In my case I use it to generate a custom url embedded with a userid for my referral system. I do this in a standard text/html module.

I also use this with my active forums. I can embed an mp3 player or video player easily just by puttin in my defined code. For example: {mp3=/somefile.mp3} would embed a small flash mp3 player in the post body.

I also use it to add script for google analytics to my page. I used to do this with a hidden text/html module but you cannot get to the exac t place (right before the closing body tag) with the text/html method.

finally I want to let your readers knopw the value of John Mitchell. this guy is a DNN expert and is very helpful on his forums. The few tough hurdles I had in my own implementations he was quick to guide me on overcoming.

Those of you looking to get more custom behavior from DNN would do well to invest in this beautiful piece of code.

Déclic Vidéo FX Déclic Vidéo FX says:

John,

As you know, I have intensively tested the module and I made some tests for you with PageBlaster. I was quite happy with it, but it seems that I had some problems recently for having it working with Friendly URL (Ventrian) + Erik Apollo Page Localisation + Locopon Localisation module. That's why I was obliged to stop the use of it. Do you know if other people also encounter this kind of problems ?

DV FX

Zymmetrical Zymmetrical says:

This 'module' (definitely seems like more than a little old module to me) is an essential for our sites.

After a year of operations in DNN, I can say that this one tops the list of 'already paid for itself many times over':

1. Snapsis Pageblaster
2. Bi4ce Listx
3. Everything from Port80Software.com (requires IIS-level admin control to use those ones)

Not to mention John is the rogue ninja of DNN, helping out people whenever he can day in day out.

scocla scocla says:

I have to echo ech01. I've been on WH4L for about a year running under DNN. I tried literally every suggestion I came across to speed up my sites and while I saw 'some' improvement - display times were "Not Good" and I was considering moving to another provider. PageBlaster was mt last resort. On first blush, I got to say - Wow! Very Impressive improvement and I have not yet begun to tweak it yet. (I'll let you know later, how that goes). At the very least - I say - PageBlaster is AWESOME! Best money I've spent to enhance my DNN site - hands down. Makes everything show up in the browser before I catch myself dozing off ... No stats to post at this point but some of the numbers I've seen are astonishing. My hats off to Snapsis Software.

Name (required)

Email (will not be published) (required)

Website

Enter the code shown above in the box below

Subscribe to our Feeds Follow on Twitter