Please follow the steps below in order to optimize your DNN application and improve your speed:Host -> Host Settings Changes
In this section, uncheck the "Show Copyright Credits" box
2. Advanced -> Authentication Settings
In this section, uncheck "Enabled" for any provider that will not be used in the portal, typically the LiveId and OpenId providers
3. Advanced -> Performance Settings
In this section, change the "Module Caching Method" to Memory. The "Performance Setting" to Heavy Caching.
4. Advanced -> Other Settings
In this section, change the "Scheduler Mode" to Timer. Enable the "Event Log Buffer" and I disable the "Auto-Sync File System" option
5. Host -> Scheduler Changes
In this section, change the "Search Engine Scheduler" task to run typically once every 12/24 hours. This reduces a big load on the server.
6. Other ChangesRegular Purging of Event Log
By default the DNN site logs whatever is happening with your DNN. This information is actually stored in your MSSQL database. This considerably increases the size of the database and thus slowing down the site. You need to delete the log files and the exceptions once you think your DNN site is loading slowly. This applies to all versions of DNN. You can access the logs under the Admin settings and then the log viewer under that.
The best policy is to clean the EventLog on a regular basis. Large Event Log table can become a very troublesome hindrance on the performance side of a site.
The following articles/tutorials provides information on managing these logs through DNN’s settings and features: http://www.dnncreative.com/Tutorials/DNNTutorialsforAdministrators/Sitelogseventlogsscheduler/tabid/343/Default.aspxhttp://www.dnncreative.com/Home/Issues/Volume2/Issueno21/tabid/346/Default.aspxhttp://mitchelsellers.com/blogs/2008/02/13/dotnetnuke-scheduler-explained.aspx
7. Make sure debug is disabled for your ASP.NET site by setting <compilation debug=”False”> in your web.config file
8. Enable Client Side caching
The following article gives a very good idea on how to enable client side caching for DNNhttp://www.dynamisys.co.uk/ArticlesDownloads/Articles/tabid/723/ID/74/Speeding-your-DNN-site-with-Client-Side-caching--Part-1.aspx
The easiest way is with a small web.config file in the folder. The location may specify a file – the cache headers are applied to that file only. The location may specify ‘.’ – The cache headers are applied to any file in that folder. Such a web.config file looks like this...Cache:
all files in Resources\Libraries\
all files in js\
all files in Resources\Shared\Scripts\
all files in Resources\Shared\Components\
You can use a powershell script to create the caching for you. You can find it at:https://github.com/RichardHowells/Dnn.Caching