Sitecore Search Index Update Strategy on Content Delivery

We have scaled environment setup with single CM and three CD instances for one of our clients. While monitoring logs, we noticed that index update was also triggered on all CD instances when any item gets published. So, the same index was updated four times which was not required.

The index should be updated by a single Sitecore instance only which should be CM in scaled environment. So, CM should perform index update operations and CD should always be in read only mode.

The default setup of index update strategies is same for both roles, CM and CD. For Example, default indexing strategies for sitecore_master_index and sitecore_web_index indexes are syncMaster and onPublishEndAsyncSingleInstance respectively in both roles. Sitecore provides seven index update strategies OOTB and Manual strategy is one of those. This strategy disables any automatic index updates.

We thought to set the Manual index update strategy for the indexes on CD. But, we wanted to confirm this with Sitecore as well before applying the patch and they also suggested the same.

We applied below patch in order to disable indexing operations on CD:

<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/" xmlns:role="http://www.sitecore.net/xmlconfig/role/" xmlns:search="http://www.sitecore.net/xmlconfig/search/">
  <sitecore>    
    <contentSearch>
      <configuration>
        <indexes>
          <index id="sitecore_web_index" type="Sitecore.ContentSearch.SolrProvider.SolrSearchIndex, Sitecore.ContentSearch.SolrProvider" role:require="ContentDelivery">
            <strategies hint="list:AddStrategy">
              <patch:delete />
            </strategies>
            <strategies hint="list:AddStrategy">
              <strategy ref="contentSearch/indexConfigurations/indexUpdateStrategies/manual" />
            </strategies>
          </index>
          <index id="sitecore_marketingdefinitions_web" type="Sitecore.ContentSearch.SolrProvider.SolrSearchIndex, Sitecore.ContentSearch.SolrProvider" role:require="ContentDelivery">
            <strategies hint="list:AddStrategy">
              <patch:delete />
            </strategies>
            <strategies hint="list:AddStrategy">
              <strategy ref="contentSearch/indexConfigurations/indexUpdateStrategies/manual" />
            </strategies>
          </index>
          <index id="sitecore_marketing_asset_index_web" type="Sitecore.ContentSearch.SolrProvider.SolrSearchIndex, Sitecore.ContentSearch.SolrProvider" role:require="ContentDelivery">
            <strategies hint="list:AddStrategy">
              <patch:delete />
            </strategies>
            <strategies hint="list:AddStrategy">
              <strategy ref="contentSearch/indexConfigurations/indexUpdateStrategies/manual" />
            </strategies>
          </index>
          <index id="sitecore_fxm_web_index" type="Sitecore.ContentSearch.SolrProvider.SolrSearchIndex, Sitecore.ContentSearch.SolrProvider" role:require="ContentDelivery">
            <strategies hint="list:AddStrategy">
              <patch:delete />
            </strategies>
            <strategies hint="list:AddStrategy">
              <strategy ref="contentSearch/indexConfigurations/indexUpdateStrategies/manual" />
            </strategies>
          </index>          
        </indexes>
      </configuration>
    </contentSearch>
  </sitecore>
</configuration>

References:

https://doc.sitecore.com/developers/91/platform-administration-and-architecture/en/index-update-strategies.html
https://doc.sitecore.com/developers/91/platform-administration-and-architecture/en/the-search-indexes-required-in-a-scalable-environment.html

Advertisements

Tagged: , , , ,

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: