menu
Logo
  • Why azing?
  • Blog
  • Help
ENarrow_drop_down
  • DE
  • EN
Suche in Checklisten
search
azing Logo ENarrow_drop_down
  • DE
  • EN
  • Why azing?
  • Help
DNN Community
drive_folder_upload
  • homeChecklist Templates
  • south

folder_sharedOperations and Security

  • homeChecklist Templates
  • south

folder_sharedOperations and Security

Folders and checklists

  • folder_sharedHosting DNN
  • check_circleConfigure SameSite Cookies for IFrames
  • check_circleDNN-​Website Performance Training (2illumin8)
  • check_circleDNN-Issues Analysis Training (2illumin8)
  • check_circleDNN-Security Training (2illumin8)
  • infoUseful Tools to analyze Website-Issues

Parts (0) expand_more

These are small document-parts which are used in other documents. They are not a starting point for any real activity. Because of this, they will be listed further down and the search will not list them unless requested. 

This is a training session for performance issues on DNN. It takes about 2 hours. It uses the 2illumin8 training model. 

Training Specs

Goals of this Training

Ensure that all participants have a broad overview of all the performance topics relevant to DNN. This include the whole spectrum from slow devices, networks, older browsers, bad images/css as well as server, code an DB issues. 

It also contains references to tools and logs where you can see in-depth what is taking how long. 

Intended Audience

This training is targeted at people who have already had some experience with DNN at a technical level - for example Web Designers, Developers and IT-Operations. It's not suited for content-editors, as it's technical.

Also see Useful Tools

DNN specific

See DotNetNuke Wiki - Performance best practices

  • SiteLog is very large
    • SiteLog should be limited to 0 (disabled)
    • DNN Scheduler 'PurgeSiteLog' should run once per day
  • EventLog is very large
    • should be limited to 400 records
    • DNN Scheduler 'PurgeLogBuffer' should run every 5 minutes
    • Event Log Buffer should be enabled (to prevent every item written to DB immediately)
  • Schedule History is very large
    • DNN Scheduler 'PurgeScheduleHistory' should run
    • Ensure a record limit is set for each active schedule
  • Files Table is very large
    • Disable 'Auto-Sync File System'
    • Disable SynchronizeFileSystem Scheduler
  • Search Engine Scheduler: Disable if search is not needed or reduce the scheduler frequency.
  • Configure Log4Net to clear old Logfiles automatically
    • Files are saved to /Portals/_default/Logs and this folder can grow very much.
    • Configure DotNetNuke.log4net.config to keep only most recent errors.
  • Disable Skin Widgets.

Usually no more relevant to DNN 7 and newer

  • Many Tabs/Pages
    • > workaround migth be to enable Heavy Caching (Host-Setting)
    • Clear the DNN recycle bin!
    • (Remember that DNN has a tab-order. On every page-move/page creation this gets updated but is inefficient. -> fixed in DNN 7)
    • DDR Menu is slow with about 1000 - 4000 Pages
    • Tabs Table is very large/ DNN Recycle Bin contains many items
  • DotNetNuke cache settings are unoptimized
    • > Heavy Caching must be enabled to cache the Tab Structure
  • \Portals\0\Cache contains more than 1000 .resources files
    • Disable Module Caching of modules like Text/HTML. A web server is usually much faster to load HTML from the DB than from a folder with thousands files.
      > enable Memory Caching instead of file based caching!
  • Delisoft_TabLocalization_ViewState Table is very large
    • enable the Delisoft ViewState purge scheduler
  • Log files are created at \Portals\_default\Logs\ (EventLog, ExceptionLog, etc.)
    • > Disable old XML logging method
  • Maybe some DNN Bugs
    • DNN 7.2.2 Caching Issue - Change urlformat="humanfirendly"
    • DNN 7 Advanced URL Management (AUM). Uses almost 35% of CPU per Request (DNN-Sharp, 16.12.2014)
    • FiftyOne Mobile Redirection. uses almost 8% (?) of CPU per Request, probably never used (DNN-Sharp, 16.12.2014)
  • Disable DNN Copyright - minor impact

ASP.Net and IIS

  • Thumbnails are generated at runtime which causes a high CPU usage in IIS process
    • Enable Thumbnail Caching/Output caching.
  • A http Module is installed, e.g. PHD SpamStopper which causes a high CPU usage in IIS process. Disable this module. Especially SpamStopper causes a very high IIS usage.
  • ASP.Net ViewState is very large
    • Finde out where it comes from with ASP.Net Trace (www.mySite.com/Trace.axd)
    • Try to keep View State on the server (e.g. in DNN is a feature "Page State Persistence", but use it very carefully because it could cause session overlaps)
  • First application startup takes very long.
    • IIS loads every .dll file in /bin folder into it's memory. Try to keep the amount of dll files as small as possible. Especially in DotNetNuke uninstall unused modules.
  • When using a Network-Share (\\server\share):
    • Configure the file server
    • Configure the IIS Server to use this
  • Optionally: Configure Cache-Control HTTP-Header for images to be different. DNN has a default of 1 year of caching (cacheControlMaxAge), but 30 days would be better in most cases.

SQL Server specific

  • SQL process causes a high CPU usage
    • Aanalyze it with Performance Dashboard Reports
  • Auto Shrink doesn't run
    • Auto Shrink could be enabled on every Database
  • SQL Transaction log is very large
    • Recovery Model should be "simple" on every Database if no SQL-Backups are made
  • Indexes are missing
    • Check them with "Missing Index Report" in Performance Dashboard Report
  • Indexes are unorganized and might have a large amount of unused space
    • Rebuild or reorganize the indexes ...
  • SQL Server Instance - Memory limit should be set, otherwise SQL Server uses as much Memory as it can get (bad for other processes on the same server)

General stuff

  • HTTP compression should be enabled in IIS
  • Antivirus software on server can degenerate and cause high CPU usage. If possible database files should be excluded from Antivirus software.
  • SQL Server Express Edition Instance runs at 1 GB memory (Momory Limit). This can cause IIS to run on high CPU and slow down Website performance.
  • A Proxy is enabled (e.g. IIS Application Request Routing ARR)
  • An Application Firewall is enabled that analyzes each HTTP Package (actual Payload/Body, independent of HTTP Headers)
Logo
Legal | Content Copyright CC-BY 4.0
bug_reportReport Bug
  • info
  • Links
  • Permissions
code Share
code
URL copied to clipboard.
Embed Checklist close
Copy Copy
Content Copyright

CC-BY 4.0

Translations

None

DNN Community Logo

DNN Community

QR-Code
azing.org/dnn-community
/r/6F45SQzU
View & Use

Public (can be used by everybody)

Edit & Admin

Default (all members can edit)

This catalog has a simple permission model, where all members have the same permissions. For advanced permissions, upgrade to Enterprise.

Here you can see how this document is used and linked by other documents

Used in (1)

Others referencing this

  1. DNN-Issues Analysis Training (2illumin8)
Uses these (3)

Documents linked from this document

  1. Useful Tools to analyze Website-Issues
  2. Setup a Windows File Server as NAS for DNN Websites
  3. Configure IIS to use Windows File Server NAS Backend
How it Behaves

How this document is categorized changes how it behaves.

This is a main document, it is listed normally and appears in search result.

Type

This is a Checklist. Lists are converted into checkboxes.

Get something to say?

Comment to start a discussion or make a note
send

please log on to chat

close

Durchsuche ganz Azing