Amongst the various factors that affect the performance of a website, DNN modules development is a major third party contributor. Other contributors for performance are the underlying infrastructure, the core website elements including frontend and back end, databases, etc. If you have thoroughly checked all other elements of a website for performance, yanking out third party modules could be the easiest choice. DNN as a core web development platform is robust and offers businesses enough flexibility and scalability to add third party modules in order to include all the necessary functions and functionalities that are required from a business perspective. Addition of external modules also need to be tested for performance in order for them to work well with your system.
Here are a few tips that can make DNN modules perform well.
jQuery and jQuery UI
This is something that not only adds to the performance, but also the stability of your DNN site. DNN 6 onwards, there has been an API method to include jQuery and jQuery UI. Basically these are used internally for DNN to handle administrator functions. So, rather than manually linking to the libraries of third party modules, this API should be made use of. Client side issues that generally arise with having two versions of jQuery loading at the same time will not arise, and your web app will be stable. HTTP requests for every page load will be reduced.
Investigate on the use of cache. DataCache can be used for internal items and not directly the Ui elements. The idea is to reduce the database chatters for your modules. The less the number of calls to the database, the better it is for the performance of your application.
Support Module Cache if Possible
Ability of DNN to store the generated HTML that your module creates, and sends that as a part of the response for a particular amount of time. The code and database calls are bypassed for that time. This amount of time can be configured. This is for non registered users and should be used only if the users do not interact with the page.
Testing Modules Under Load
Simple testing before making the module live is the right thing to do. Make sure you observe whether it takes up too much CPU cycles, database activities, open SQL connections, etc. This can help you improve performance before the module goes live.
Well, DNN as a whole is a robust system. It offers you the flexibility to add external modules to improve the functionality of your website, however, while doing so, ensure that you are not ruining the performance. Make sure that you check all the little things that a module can affect and impact and then test for the performance of your website.