The performance of your web site depends on many aspects:
1. | Hardware on which your web site and database server are running. |
2. | Available system performance when you're sharing the system resource with other applications (typically in shared hosting environment). |
3. | The size of your web site. |
4. | The complexity of the web site (number of nesting levels, number of web parts on the page, etc.) |
5. | Custom code you added to the web site. |
6. | Use of caching. |
7. | Other special circumstances, such as network connectivity between web server and SQL server, etc. |
Troubleshooting Kentico CMS Performance Issues
If you encounter performance issues, please try to follow these steps to make sure that your system is optimized for best performance:
1. | Make sure you're using the latest version of Kentico CMS We improve the performance with every new release. Especially the 2.0 and 2.1 versions didn't provide a very good performance. You can find the version number in the lower right corner of Kentico CMS Desk -> Content dialog or on the logon screen of the administration interface. |
2. | Make sure caching is configured on your web site. Go to CMS Site Manager -> Settings, choose the appropriate web site in the Sites drop-downlist and choose the Web Site category. Make sure the values are set like these: - Cache content >= 0 - Cache images > 0, at least 10 minutes recommended (images are automatically removed from the cache and reloaded if you modify them) - always set Cache page info > 0, at least 10 minutes recommended (page data is automatically removed from the cache and reloaded if you modify it) |
3. | Try configuring full-page caching Full-page caching is the most powerful caching option. Once the page is cached in the memory during the first view, it's displayed without contacting SQL server and running the page code. You can configure full-page caching in CMS Desk -> Content -> Properties -> General -> Cache. The page is automatically removed from the memory and reloaded when you modify it's content. Please note that the performance improvement will be visible only during the second load of the page. |
4. | Turning off output filters In special cases, the web site may be slowed down by output filters. Go to Site Manager -> Settings, choose the appropriate web site in the Sites drop-down list and choose the Output filter category. You can try to temporarily turn off all output filters by setting the following values to / (slash), which will disable the given filter for the whole web site: - Excluded output form filter URLs - Excluded resolve filter URLs - Excluded XHTML filter URL If it helps, please contact us and we will help you find a workaround (if possible). |
5. | Configure file caching Displaying files stored in Kentico CMS repository may be require lots of CPU time and may harm the overall web site performance. Please try to configure these values in the Site Manager -> Settings -> Files section (your web application needs to have Modify permissions on the disk): - Generate thumbnails: yes - Redirect files to disk: yes - Store files in file system: yes |
6. | Check your code If you integrated any custom .NET code into the web site, please make sure it works properly. Please be sure to avoid too many database operations and be sure to close the database connections properly. Try to comment out your code and see if it improves the performance. |
7. | Check your hardware It's recommended that your system has at least 1 GB RAM and Pentium 4 or Pentium Core 2 Duo (or similar) processor. |
8. | Check the other applications/web sites running on the same server Whether you use your own server or shared hosting, make sure that the other applications do not take all the server performance. It's highly recommended that you run Kentico CMS in a separate application pool on Windows Server 2003. |
9. | Setting application pool Idle time-out in IIS |
If your web site is accessed not very frequently (less that every 20 minutes by default), users may experience long delays on first access to the site. To prevent this, you need to set the Idle time-out (minutes) property of the application pool to a higher value. This property can be accessed through:
IIS 6: open IIS Manager -> select <machine>/Application Pools -> right click the application pool -> select Properties -> switch to the Performance tab -> set the Shutdown worker process after being idle for (time in minutes) to a higher value or disable the option completely by unchecking the box
IIS 7: open IIS Manager -> select <machine>/Application Pools -> right click the application pool -> select Advanced Settings -> the property is located in the Process Model section
If the above mentioned settings don't help, please send us an exported copy of your web site and we will try to analyze it.
Page url: http://devnet.kentico.com/docs/devguide/index.html?performance_overview.htm