Sitecore Optimization
Let's separate out optimization into
two categories
Content Management (CM)
Content Delivery (CD)
Alright let's talk about CM
optimization that being said there are different ways to optimize content
management server first let's talk about a setting called disable cache size
limits in Sitecore
File Path : <Sitecore Web
root>/App_Config/Sitecore.config
<setting name="Caching.DisableCacheSizeLimits" value="true"/>
If true, Sitecore does not limit
cache size growth and ignores any maximum cache sizes specified in the
web.config file. Enabling this setting can improve the application's
performance in 64-bit environments by allowing Sitecore to take full advantage
of the available memory. After setting this value to true, monitor the system
at regular intervals, as this configuration can cause Sitecore to consume too
much memory and cause Out Of Memory errors.
Note: It is only recommended to
set the setting to true in 64-bit environments.
You can keep track of live cache
statistics https://your.sitecore.website/sitecore/admin/cache.aspx
Enable IIS HTTP keep-alive
Enabling the HTTP keep-alive reduces
the number of connections required to be opened. If the HTTP keep-alive is
disabled, a new connection is made for every requested object on a web page.
To enable the HTTP keep-alive:
- Launch IIS Manager.
- Navigate to the site that you wish to enable the HTTP
keep-alive.
- Double click the HTTP Response Headers (located in the
IIS grouping).
- In the Actions panel, click Set common headers...
- Select Enable HTTP keep-alive.
- Click OK
Memory monitor & Health monitor
Sitecore
recommends disabling the Memory Monitor in production environments, and only
enabling it for troubleshooting memory related issues.
<hook type="Sitecore.Diagnostics.HealthMonitorHook,
Sitecore.Kernel"/>
<hook type="Sitecore.Diagnostics.MemoryMonitorHook,
Sitecore.Kernel">
<param desc="Threshold">6GB</param>
<param desc="Check
interval">00:00:05</param>
<param desc="Minimum
time between log entries">00:01:00</param>
<ClearCaches>false</ClearCaches>
<GarbageCollect>false</GarbageCollect>
<AdjustLoadFactor>false</AdjustLoadFactor>
</hook>
Note: Disabling Item Caching has a
significant negative impact on performance
<setting
name=”Caching.ItemCachingEnabled” value=”true”/> (enabled by default)
Optimize Sitecore Tree
Administrators should take into
account that performance degrades as the number of items under any item
increases. Usability is also affected. As a general precaution, no item should
be the parent of more than 100 other items. Make use of bucketed items.
If a company has a thousand users
who access the site or more, architects should group users such as by location,
by office, by department, by team, by first letter(s) of login name or other
criteria to support a limited number of users under each folder in user
manager.
Optimize Sitecore Cache
Client
Data Store cache
Security
caches
Viewstate
cache (not sure how this goes with MVC)
Registry
cache
XSL
caches
Prefetch
caches (Sitecore loads Prefetch caches during application initialization)
o
First
caching layer between the application & database
o
Prefetch
contains data from single provider
o
Loading
too much data into Prefetch can adversely affect
Note: recycling
of IIS clears all the Sitecore cache except media cache (media uses file system)
----- Stay tune for rest of the content -----

No comments:
Post a Comment