10

I am getting painfully slow performance when using the experience editor in sitecore 9.. I have several modules added to the page (inside nested dynamic placeholders), and any change seems to take an age.. Every time I add a module, or save, it can take several minutes to reload..

I've seen Kam's post https://kamsar.net/index.php/2015/02/sitecore-8-experience-editor-performance-optimization/ but it applies to sitecore 8 and is more about start up, instead of actual usage of the experience editor..

9
  • You can try not to open the page in Experience editor instead add the modules with presentation from the content editor. You have option of preview in content editor which shows your changes on the page with less load. Commented Mar 6, 2018 at 16:46
  • 1
    Not really an option, as I have nested dynamic placeholders, and as such, an editor won't know the placeholder ID to add new components too..
    – mp3duck
    Commented Mar 6, 2018 at 16:49
  • You you run debug mode on the page in Experience Editor to see any offending renderings? And looked at the Developer Tools in the browser to check things like long running network calls, performance etc?
    – jammykam
    Commented Mar 6, 2018 at 16:52
  • I'll check the network tab for anything obvious. Can you let me know how I enable debug mode for experience editor please?
    – mp3duck
    Commented Mar 6, 2018 at 16:54
  • 2
    check this screencast.com/t/7rSqxtoJzMH Commented Mar 6, 2018 at 16:57

7 Answers 7

5

I personally prefer looking at doing performance improvements holistically on the entire Content Management instance. As there are most likely multiple content authors using the CMS all at the same time, it is important to ensure that everything is as optimised as it can be.

  1. Reset editor profiles every time they login https://community.sitecore.net/technical_blogs/b/sitecorejohn_blog/posts/optimize-performance-on-login-to-the-sitecore-asp-net-cms
  2. Do not show standard fields by default.
  3. Hide hidden / bucket items by default in content editor
  4. No background wallpaper
  5. Put a cdn in front of content authoring to cache all JS / CSS, and images "Akamai CDN with Sitecore Content Management Instance" by Vincent Lui https://link.medium.com/7LPpnzSFNZ
  6. Disable validations and only enable them during workflow and publish
  7. Take a look at your waterfall, see which toolbar / ribbon is taking the longest to load, disable that function if not necessary
  8. May want to consider using publishing service 4.1 if your sitecore version supports it
  9. Throw more hardware on it, if possible, scale out after implementing 7 and 8
  10. Upgrade to 9.2 and use a dedicated indexing role
  11. Ensure your code is fully optimised
  12. Implement caching even in experience editor on objects if not already done
  13. Run profiler against your code and see if there are any code smells
  14. How efficient are your search queries ?
  15. Disable content testing if its not used
  16. Ensure content authors do not use incognito / private browser mode. For some unknown reason, they all think running web apps on incognito mode fixes everything
  17. My Colleague found the following setting, which should be set to false.

    <!-- Prevent Sitecore loading extra level of items when expanding tree in Content Editor -->
      <setting name="ContentEditor.RenderCollapsedSections" value="false" />
    
2

Disable Suggested Tests. We improved experience editor performance drastically disabling the same. Below two options suggested by Sitecore.

  1. Deny Read access to the item /sitecore/content/Applications/WebEdit/Ribbons/WebEdit/Optimization/Lists/Suggested Tests in core database. As a result, the button remains working for admin users.

  2. Archive the item /sitecore/content/Applications/WebEdit/Ribbons/WebEdit/Optimization/Lists/Suggested Tests in core database. This approach removes the button completely for all users.

1

In addition to the suggestions here you could also look at the following:

  1. Remove Un-needed components from showing in experience editor (e.g perhaps navigation/GTM/Meta components etc) - I've blogged about how to do that here: https://www.flux-digital.com/blog/hiding-unneeded-components-to-speed-up-sitecore-experience-editor/

  2. Disable the my items count (items that are locked by the current user). More info and options on this here: Improving the performance of MyItems Count in Sitecore 8.1

  3. Turn off Security checking on tree nodes. This has one downside that means content editors will see parent items in the tree they shouldn't see and get a error message saying they don't have access if they click on it.

<setting name="ContentEditor.CheckSecurityOnTreeNodes">
    <patch:attribute name="value">false</patch:attribute>
</setting>
  1. Turn off Checking for children on tree nodes. This has one downside that means content editors will see an arrow for child items in the tree (even if there are no child items) then if they click on it it will disappear.
<setting name="ContentEditor.CheckHasChildrenOnTreeNodes">
<patch:attribute name="value">false</patch:attribute>
</setting>

Some of these settings only affect content editor but if content editor is slow then it will likely impact the CM performance in general and affect experience editor too.

1

Usually we disable:

  1. The Content Testing (if it is not required). You can see how to do this in here
  2. Set "WebEdit.ShowNumberOfLockedItemsOnButton" setting to "false"
1

If you're experiencing slow performance in editing mode then please consider this: DatasourceUsagesCount request slowing down Experience Editor. This contains a hotfix.

If you're experiencing slow loading of experience editor then you need to follow these steps that were already mentioned

  1. turn off Experience Optimization
  2. turn off "WebEdit.ShowNumberOfLockedItemsOnButton" setting that was mentioned before.

These issues should be already fixed in higher versions of the Sitecore.

0

Did you consider restricting access to the specific roles who do not need access to optimization tab?

In you network monitor, if you see Optimization.SuggestedTests.Count - taking around 10 seconds. You can create separate roles and restrict read access to optimization tab. This significantly improves performance.

You can read more on optimization and what you're turning off in the following link. https://doc.sitecore.com/users/91/sitecore-experience-platform/en/experience-optimization.html

Cheers

0

If you use Sitecore 10 Initial Release it is possible that you experience low performance of Experience Editor because of the bug that was fixed later the in newer versions of Sitecore (at least Sitecore says it).

You can try to remove Sitecore.Pipelines.FilterItem.GetPublishedVersionOfItem processor with patch:

<processor type="Sitecore.Pipelines.FilterItem.GetPublishedVersionOfItem, Sitecore Kernel" resolve="true">
    <patch:delete />
</processor>

If it helps - ask Sitecore Support for hotfix SC Hotfix 530937-1

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.