Sitecore Best Practice Series:


Sitecore Administration Best Practices


# Practice Rationale
1 Enable sticky sessions in load-balanced environments Although some may argue that server affinity slows down requests, lack of it will result in other solutions that generally create additional overhead, which does not outweigh the gains in performance.
2 Disable Sitecore UploadWatcher Upload watcher automatically creates items in the Media section for files in /Website/upload folder, which may present a security risk if this functionality is not used.
3 Remove the “master” database in CD environment In an environment with separate CM and CD servers, “master” database on the latter is not used; leaving the database accessible may lead to security risks and unnecessary usage of resources.
4 Restrict access to the client editing tools in CD environment Leaving Sitecore client tools available may present a security risk.
5 Use Web Deploy for servers on separate and DFS for servers on the same domain. DFS only works for servers within the same domain, while Web Deploy can overcome this restriction.
6 Set log4net to only record errors Log4net will not use as many resources when it is only set to record errors.
7 Configure Sitecore to replace spaces with dashes in item names. Items names are used for URLs, “item-name” is much more readable than “item%20name”, which imrpoves SEO rating of the website.
8 Use a dash for the media URL instead of ~ IIS applies special security evaluation rules to URLs containing ~.
9 Disable the Publish Site option Site-wide publishing may result in accidental publishing of additional content. In addition content editors tend to prematurely publish content updates, resulting in a large number of publishes, which in turn negatively affects website performance.
10 Ensure availability of the Preview on CM servers With content publishing workflows disabled, Content Authors tend to Publish the changes and “preview” them live and make any last modifications, which results in multiple publishes, slowing down the website performance dramatically.
11 Setup Continuous Integration There are numerous benefits of implementing a Continuous Integration environment with the main being automated configuration changes and deployments. Check out the Continuous integration and deployment automation thread on Sitecore Community website.
12 Harden the CD servers Increases security of the CD environment. Check out the Sitecore Security Hardening Guide.
13 Configure automatic unlock on item save Mitigated issues with editors leaving locked items making them inaccessible for other users.
14 Regularly clean up and  rebuild link databases Increases performance and eliminates errors during data access.
15 Use scheduled publishing Sitecore clears the caches for specified sites in configuration after the publish, frequent publish operations will dramatically slow down the website performance.
16 Configure Internet Explorer settings Some Sitecore functionality may not work properly in Internet Explorer if it is not properly configured.
17 Use Solr for implementations heavily relying on search. Solr scales much better than Lucene (Solr Production Environment Setup) allowing to satisfy high-performance and -availability requirements; it also provides a variety of tools, including an extensive RESTful web API.
18 Configure compilation node’s debug attribute under to be set to false Performance degradation (MSDN Article on the compilation debug setting)
19 Enable IIS static and dynamic asset compression. Browser-downloaded content gets compressed, increasing page load speed.
20 Disable Sitecore performance counters on CD servers. Sitecore performance counters add processing overhead to the Sitecore instance, thus, they should only be used for debugging purposes.
21 Modify log4net file naming format to display date first. Sitecore Desktop Log Viewer sorts files by name by default and does not provide sorting functionality. When putting the data first, files get sorted in the order they are updated, making easier to find the most recent logs. Check out John West’s article on Cleaning up Logging Clutter.



  • Faiyazul haque Noor
    December 13, 2016 at 1:24 am

    @vasiliyfomichev:disqus Thanks for input, If I want to scale out and add one more CM server for redundancy without load balancing, as you suggested how to go for failover with minimal changes in existing architecture any blogs suggesting how to do add a failover CM server can you suggest.

  • Faiyazul haque Noor
    December 9, 2016 at 7:15 pm

    Thanks for quick reply @Vasiliy Fomichev.
    As single CM is performing slow , instead of failover can I go for a separate publishing server to take care of publishing task and keep load off from my CM.Or should I look for any other changes to improve performance?

  • Vasiliy Fomichev
    December 9, 2016 at 6:36 pm

    Hi @faiyazulhaquenoor:disqus , a single Sitecore CM instance should comfortably handling that. Scaling on CMs is usually done fore redundancy, not that Sitecore can’t handle the amount of authors. CM scaling can also get tricky with sessions, agents, processing…etc. so I usually recommend having a cold failover instead, if possible.

  • Faiyazul haque Noor
    December 8, 2016 at 3:07 am

    Any suggestion on number of CM servers one should have for around 50 content authors?

%d bloggers like this: