DNN Community Blog

The Community Blog is a personal opinion of community members and by no means the official standpoint of DNN Corp or DNN Platform. This is a place to express personal thoughts about DNNPlatform, the community and its ecosystem. Do you have useful information that you would like to share with the DNN Community in a featured article or blog? If so, please contact .

The use of the Community Blog is covered by our Community Blog Guidelines - please read before commenting or posting.


Performance Update - Part 3

I have blogged a few times on the performance testing and improvements in 4.4.0.  This Blog will focus on two areas which were added towards the end of the development cycle.

Compression/White Space

An HttpCompression and Whitespace filter have been added as a single HttpModule.  They are implemented as a single module call Compression.  This module was based on the Blowery Compression Module (whose code was donated to the project a few months ago).  As the original Blowery code was in C# this module is also in C#.  A number of changes have been made from the Blowery module:

  • Some settings have been moved from the web.config to the Host Settings (under the new Performance Section) - these include the type of compression (None, Deflate and GZip) and the level of compression.
  • The rest of the settings have been moved out of web.config into a separate xml file (Compression.config) which can be found in the \Config folder and which is copied to the root folder when first needed.  This config file allows the user to set the excluded paths and mime-types.
  • A Whitespace filter (based on a regular expression (regex)) has been added to the module.  It is enabled under the performance section - and the regex used to strip the whitespace can also be set there.

Note: As this is implemented as an HttpModule two things should be noted - the module must be enabled in web.config, in the HttpModules section - if you are upgrading copy the relevant node from release.config to your web.config file.  Secondly, only file types processed by ASP.NET will be compressed - ie css and js files are processed normally.

Minimal Install

Originally we had hoped to enable a system that would not "force" all assemblies to be loaded on Application Start, by moving some of the assemblies to subfolders of \bin.  This reduces the memory footprint of dotnetnuke, when there are assemblies installed that are rarely or never used.

Unfortunately, we ran into issues with upgrades, and so we decided not to implement those changes.  However, it still remains true that the \bin should only contain assemblies the application needs.  We therefore decided that, while all module zips are included in the Install package, only HTML and Links are installed by default - these are required for the default template.

The other modules are present (renamed as .resources) and can be installed through the Module Definitions page, either singly or all at once, by checking the module(s) in the list of available modules at the bottom of the page, and clicking "Install Now".

Comments

Comment Form

Only registered users may post comments.

NewsArchives


Aderson Oliveira (15)
Alec Whittington (11)
Alex Shirley (10)
Andrew Nurse (30)
Andy Tryba (1)
Anthony Glenwright (5)
Antonio Chagoury (28)
Ash Prasad (32)
Ben Schmidt (1)
Benjamin Hermann (25)
Benoit Sarton (9)
Beth Firebaugh (12)
Bill Walker (36)
Bob Kruger (5)
Bogdan Litescu (1)
Brian Dukes (2)
Brice Snow (1)
Bruce Chapman (20)
Bryan Andrews (1)
cathal connolly (55)
Charles Nurse (163)
Chris Hammond (209)
Chris Paterra (55)
Clinton Patterson (40)
Cuong Dang (21)
Daniel Bartholomew (2)
Daniel Mettler (154)
Dave Buckner (2)
David Poindexter (4)
David Rodriguez (3)
Doug Howell (11)
Erik van Ballegoij (30)
Ernst Peter Tamminga (74)
Geoff Barlow (10)
George Alatrash (6)
Gifford Watkins (3)
Gilles Le Pigocher (3)
Ian Robinson (7)
Israel Martinez (17)
Jan Blomquist (2)
Jan Jonas (3)
Jaspreet Bhatia (1)
Jenni Merrifield (6)
Joe Brinkman (274)
John Mitchell (1)
Jon Henning (14)
Jonathan Sheely (4)
Jordan Coopersmith (1)
Joseph Craig (2)
Kan Ma (1)
Keivan Beigi (3)
Ken Grierson (10)
Kevin Schreiner (6)
Leigh Pointer (31)
Lorraine Young (60)
Malik Khan (1)
Matthias Schlomann (15)
Mauricio Márquez (5)
Michael Doxsey (7)
Michael Tobisch (3)
Michael Washington (202)
Miguel Gatmaytan (3)
Mike Horton (19)
Mitchel Sellers (28)
Nathan Rover (3)
Navin V Nagiah (14)
Néstor Sánchez (31)
Nik Kalyani (14)
Peter Donker (54)
Philip Beadle (135)
Philipp Becker (4)
Richard Dumas (22)
Robert J Collins (5)
Roger Selwyn (8)
Ruben Lopez (1)
Ryan Martinez (1)
Salar Golestanian (4)
Sanjay Mehrotra (9)
Scott McCulloch (1)
Scott S (11)
Scott Wilkinson (3)
Scott Willhite (97)
Sebastian Leupold (80)
Shaun Walker (237)
Shawn Mehaffie (17)
Stefan Cullmann (12)
Stefan Kamphuis (12)
Steve Fabian (31)
Timo Breumelhof (24)
Tony Henrich (3)
Torsten Weggen (2)
Vicenç Masanas (27)
Vincent Nguyen (3)
Vitaly Kozadayev (6)
Will Morgenweck (40)
Will Strohl (165)
William Severance (5)

Content Layout

Subscribe to DNN Digest

DNN Digest is our monthly email newsletter. It highlights news and content from around the DNN ecosystem, such as new modules and themes, messages from leadership, blog posts and notable tweets. Keep your finger on the pulse of the ecosystem by subscribing.  


Copyright 2017 by DNN Corp Terms of Use Privacy
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out