Tuesday, September 10, 2019

Sitecore-Front-end performance tuning points


In the previous Sitecore Performance Tuning article, i tried to explain about that Sitecore website performance depends upon Front-end items and Sitecore items and shared the listing of items, which we need to consider.
In the continuation of Sitecore performance tuning, I will try to explain the ways which needs to be consider in Front-end development of Sitecore website.

Page Weight: 
While creating the html schema of the page with media items, we have to taken care of :
  •  HTML schema of the page because unnecessary number of HTML object will also increase the page size, so need to use least number of HTML objects and to avoid use of HTML table objects and embedded objects.

  •  Optimized image needs to be used as per channel. Before starting of implementation, asset validation needs to be done and in which load time of image needs to be validated. If taking more time then optimize image can be used. For image optimization, some of the inputs are:
 
Dianoga Plugin:





Requests: 
In the Website development, if you have implemented more calls to request any type of resources then performance of the website will decrease, so you have taken care following items:

  •  Reduce the number of request and it can be image, static resources (css, js), Ajax call, Server side code to make many calls to third party resources, etc.

  • Minify the CSS and JavaScript files. In one of the session, I tried to explain how Static Resources (JavaScript, CSS) can be manged and impact of Static Resources Management strategies. You can check the slides at:


DOM (Document Object Model): 
In the Website development most of the times, we are writing JavaScript based code to manipulate the DOM. If we are using heavily  DOM manipulation then Site performance would be slow because manipulation or logic would be executed after page render and user will not be able to perform any action on the screen.
If you still need to perform DOM manipulation then use:

  •  JavaScript based Framework like ReactJS which will work on Virtual DOM not the actual DOM and will help in increasing the page performance. 

 •  Avoid DOM manipulation on CSS CLASS name and always good to write the JavaScript function and call the function on particular JavaScript event and maintain neat and clean JavaScript file. In my session MANAGE STATIC RESOURCES IN SITECORE IN HELIX WAY , I explained how to maintain JavaScript code.

 •  Avoid use of IFRAMEs because, it will fetch the data from other site and we are not having control on optimization of other site content.


JavaScript/JQuery: 
Refactoring and code optimization of JavaScript code is very important because after performance optimization at server side, if you site is not loading faster then route cause can be static resources. In this case:

 •  Use modular approach to write JavaScript code.

 •  Avoid repeatable code.

 •  Validate the JavaScript logic and remove unwanted objects which store large amount of data.

 •  Avoid JavaScript version conflicts.

 •  Rectify all JavaScript related errors.

 •  Avoid writing JavaScript at page level and wherever possible use require to load JavaScript file

CSS (Cascading Style Sheets): 
Develop framework of CSS file, so that easy to maintain. You can look into following items for CSS development:

 •  Organize the CSS file in proper way, it means write the css class as per the page structure like header, navigation, etc.

 •  Write code in readable.

 •  Use proper naming convention, Scalable vector graphics (SVGs) images for logo, icon charts, etc. and use ID selector for writing css class.

 •  Avoid inline styling, @import, !important, Base64 bitmap images

 •  Compress the CSS file by taking care of files order and reduce the size of css file.

 •  Avoid unnecessary nesting of css classes because while page load browser will go from top to bottom of page and will check each and every DOM element to find the required CSS classes.

 •  Modular CSS implementationformat  the number of request and it can be image, static resources (css, js), Ajax call, Server side code to make many calls to third party resources, etc.

 •  Load functionality specific CSS files wherever required.

 •  Avoid using background image and utilize the CSS for these type of effects.

 •  Remove un-wanted fonts


References/Ping back:
how to monitor javascript performance
how to benchmark javascript performance
how to analyze javascript performance
how to improve javascript performance
how to increase javascript performance
javascript best practices for performance
javascript performance best practices
css performance optimization
css performance tuning
css performance best practices
css performance selectors
css performance issues
how to increase css performance
how to optimize css performance
what is css performance
css performance analysissitecore 9 performance counters
sitecore 9 experience editor performance
sitecore performance guide
sitecore 9 performance issues/problems
improve sitecore performance
sitecore performance optimization
sitecore solr/sxa/redis/rendering/pipeline performance
sitecore performance white paper
sitecore 9 slow performance
troubleshooting sitecore performance

Share:

Tuesday, July 30, 2019

Step-by-step guide to use Advance Image Focal Point Module for Sitecore 9.x

Step-by-step guide to use Advance Image Focal Point Module for Sitecore 9.x


Problem Statement:
The content author able to utilize one image with different focal point, so that no need to upload different images, if content author want to focus on left/right hand side of the image.

Solution:
The Advance Image Focal Point module is very useful module it will facilitate content author to utilize the one image with different focal point. With this module no need to upload different images.
An custom image field with focus cropping option. Allows content authors to set focal point on images and cropping is done based on defined axes.

I would like to thank SAAD AHMED KHAN (@saad_ahmed_khan), for creating Advance Image Focal Point module which helps in solving the problem.

Module:
The Advance Image Focal Point using:

1. Custom field called “Advance Image” created by extending the built-in Image field.
2. Media Request Handler – checks for the additional custom parameters (querystring) for focus cropping. The details present at https://github.com/AmitKumar-AK/sitecore-fields/blob/master/src/Sitecore.Fields/Requests/CropMediaRequest.cs
3. Image Processor – processes the image based on the passed parameters (querystring). The details present at https://github.com/AmitKumar-AK/sitecore-fields/blob/master/src/Sitecore.Fields/Processors/CropProcessor.cs
4. The following items would be deployed into WebRoot and Sitecore using the Market place module at https://marketplace.sitecore.net/en/Modules/A/Advance_Image_Field.aspx:

Website
|-- App_Config
|   |-- Include
|   |   |-- Sitecore.Framework.Fields.AdvanceImage.config
|-- Fields
|   |-- AdvanceImage
|   |   |-- css
|   |   |   |-- focuspoint.css
|   |   |   |-- helper-tool.css
|   |   |-- img
|   |   |   |-- target-selector.png
|   |   |-- js
|   |   |   |-- jquery.focuspoint.js
|   |   |   |-- jquery.focuspoint.min.js
|   |   |-- detail.html
|   |   |-- template.html
|-- bin
|   |-- Sitecore.Framework.Fields.dll


Sitecore
|-Core
|-- Sitecore
|   |-- System
|   |   |-- Field types
|   |   |   |-- Advanced Field Types
|-Master
|-- Sitecore
|   |-- System
|   |   |-- Modules
|   |   |   |-- Advance Image Module
|   |-- Templates
|   |   |-- Advance Image Module

5. Now download the updated code from https://github.com/AmitKumar-AK/sitecore-fields which is Sitecore 9.1 compatible.
6. Build the solution and deploy the latest assembly in to WebRoot\bin folder.
7. Download the ImageProcessor.dll from https://www.nuget.org/packages/ImageProcessor and deploy to WebRoot\bin folder.
8. Go to Sitecore\Core\ System\Field types\Advanced Field Types and select the Configure tab, press the Change button in the Template section, and select /sitecore/Common/Folder. 

With the help of above changes you will be able to see correct field options related to Image field in Content Editor when you will use custom “AdvanceImage” field in your custom Template:


How to use Advance Image Focal Point:
1. To use the The Advance Image Focal Point module in your Project/Solution, first you have to install the module by following the steps mentioned in step “Module”.
2. Create the custom template and use custom “Advance Image” field as a Field type. Please check the image template details at https://github.com/AmitKumar-AK/CT.SC/blob/master/src/Feature/PageContent/code/README.md
3. Create the component which will access the filed and display on screen by passing the required dimensions.
Please check the component details at 

You can pass different dimension which defined at /sitecore/system/Modules/Advance Image  Module/Thumbnails/ to access particular Focal Point image like 

Utilities.GetAdvancedImageUrl(Templates._PromoItem.Fields.AdvanceImage, item, 300,150);

Where Width is 150px and Height is 300px.

4. The output of the image will be:


The cshtml file code for the promo content present at https://github.com/AmitKumar-AK/CT.SC/blob/master/src/Feature/PageContent/code/Views/PageContent/PromoContent.cshtml

How to add other dimensions:
1. By default, following Thumbnail dimensions present at /sitecore/system/Modules/Advance Image Module/Thumbnails/:
150x300
200x180
350x80
80x80

2. If you need to use another dimension for your requirement then you can add new dimension also like
80x80 and it will start reflection on the content item where AdvanceImage field being used:

New Thumbnail dimension:


Content Item:


3. To access newly created dimension in your code, you have to change the dimension, which you are passing in the code :
Utilities.GetAdvancedImageUrl(Templates._PromoItem.Fields.AdvanceImage, item, 80,80);

Where Width is 150px and Height is 80px.

Github updated for Sitecore 9.x:
Updated the original code present at https://github.com/saadahmedkhan/sitecore-fields for
.NET Framework 4.7.1
Sitecore Version: Sitecore.NET 9.1.0 (rev. 001564)
Updated code present at https://github.com/AmitKumar-AK/sitecore-fields

Pingback:
Image focal point
Siteocre image focal point
image formed at focal point
focal point image cropping
focal point upside down image
focal point for an image
image on focal point
image focal point js/css
data-image-focal-point
Sitecore image field
Sitecore MediaManager 

Reference:
Share:

Monday, July 15, 2019

Sitecore 9 Performance Tuning



The performance is the key to any product irrespective of software product or a hardware product and it’s also played a major role in the success and acceptance of the product.
In web-based application’s performance is the most talked about non-functional requirement (NFR) item and before starting of the project everyone will talk about performance performance….
Now a days most of the Sitecore based websites are rich in user experience and everyone wanted the site response very fast without knowing what’s the complexity in the backend in orchestrating the required data in user understandable format. In this scenario, from starting of the project we need to take care about data flow between different system and only required data needs to be shared/flow between systems.

Once the actual development will start and obviously with STRICT deadlines (Universal Truth 😊) then no one will take care about performance and everyone just busy in accomplishing the deadlines.
After completion of development once business user’s start accessing the site and we started getting the complains about the Sitecore website (content management and content delivery performance performance….).

In the upcoming series of performance related blog post, I will try to explain my experience to troubleshoot the performance bottleneck and what are the articles/steps I followed and hoping that will be helpful for our Sitecore Community (#SitecoreCommunity) 😊.

We can divide the performance tuning or optimization process into two parts:



Front-end performance tuning points:
Please find below some of the front-end related items, which can be taken care to improve the performance:



Sitecore performance tuning points:
After performance optimization of Front-end related items, we have to look into Sitecore related items for performance tuning:



In the upcoming blog posts, I will try to explain the settings which I followed to improve the Sitecore 9 site performance.

Ping back/Issues:

Sitecore Caching Fundamentals
Caching Overview
Sitecore Cache
Prefetch Cache
Sitecore CMS 7.0 - CMS Performance Tuning Guide
Excessive load on ASP.NET Session State store 
Sitecore Admin Pages 
Looking for ways to boost performance in your Sitecore instance? Check out these 3 tips!
How to improve sitecore performance
sitecore azure performance
sitecore performance benchmark
sitecore performance counters
sitecore cms performance tuning guide
sitecore commerce performance
sitecore 9 performance counters
sitecore 8 performance counters
sitecore database performance
sitecore 9 experience editor performance
sitecore performance guide
sitecore 9 performance issues/problems
improve sitecore performance
sitecore performance optimization
sitecore solr/sxa/redis/rendering/pipeline performance
sitecore performance white paper
sitecore 9 slow performance
troubleshooting sitecore performance

Share:

Thursday, June 13, 2019

Sitecore SXA Web Accessibility Testing: Fix for Sitecore SXA Gallery Video component



Sitecore Experience Accelerator (SXA) Web Accessibility Testing: Fix for Sitecore SXA Gallery Video component

The Web Accessibility of a website is very important NFR and needs to be taken care before going LIVE and best approach is to take care this activity during the development phase, it means developer (HTML mockup and Backend Developer) should include this activity during the development.

There are some web content accessibility guidelines (WCAG) needs to be taken care:
WCAG 1.0
WCAG 2.0

Web accessibility guidelines will help in creating the website so that public content of the website accessible to all types of people including people with disabilities via correctly designed, developed and edited website.

In order to make Web Content Accessibility Guidelines (WCAG) compliant website we have to do the Web accessibility testing of website. We can select the web accessibility testing tool as per client need from the available list at Web Accessibility Evaluation Tools List.

 You can also use the Google Chrome browser add-on WAVE Evaluation Tool.

After installation of above add-on restart the Google Chrome browser and access the required web-site and click on the WAVE Evaluation Tool icon beside browser or right click on the page and select WAVE this page


In the above screen show, the output of Web accessibility test using the WAVE Evaluation Tool are displaying, which depict: Errors, Alerts, etc….

I have used WAVE Evaluation Tool in the Sitecore XP 9.0 (9.0 rev. 180604 Update-2, SXA 1.7 rev. 180604) Experience Accelerator (SXA) website and some of the error details are:

If you click on the Contrast Option, then it will show you the Contrast related errors:

If you click on the Styles Option, then it will show you the Styling related errors:


With the help of above findings, we can resolve Web accessibility related errors and make site Web Content Accessibility Guidelines (WCAG) compliance.

While doing the Web accessibility testing I found Web accessibility bug in the Sitecore SXA Gallery Video component.

Issue Details: Thumbnail Image for SXA Gallery Video does not contain "alt" attribute in the generated HTML markup.

* In Gallery Component > Gallery Video item added
* In Gallery Video item added the image for "Custom local thumbnail" attribute which having the ALT text also.
But after rendering of image, its not showing the ALT Text for image:

<img width="1000" height="40" style="left: 0px; top: 0px; width: 1000px; height: 40px; display: block; position: absolute; min-height: 0px; max-height: none; min-width: 0px; max-width: none; opacity: 1; transform: translate3d(0px, 0px, 0px);" src="/-/media/Project/Site1/shared/Img1.png">

Fix: The alternate text not showing for the Gallery Video item image is a BUG and for that Sitecore support team provided the fix

1. Backup the /sitecore/media library/Base Themes/Core Libraries/Galleria/galleria-classic-min media attachment;
2. Download the attached galleria-classic-min-fixed.js file:


3. Attach it to the /sitecore/media library/Base Themes/Core Libraries/Galleria/galleria-classic-min item;
On the related Video item, please fill the "Description" field. It will be used for the "alt" attribute of the related Custom Thumbnail image:

Output after applying the fix:

Sitecore Stack Exchange query: Sitecore SXA Gallery Video item Thumbnail Image

Thanks to Peter Prochazka a.k.a chorpo (@Chorpo) for SXA Logo 

Issue Listing:
  • what is web accessibility initiative
  • how to use web accessibility toolbar
  • what is web accessibility and why is it important
  • what are web accessibility guidelines
  • what is web accessibility and usability
  • what is web content accessibility guidelines (wcag) 2.0
  • who benefits from web accessibility
  • what is web accessibility testing
  • web accessibility in html5
Reference:

Share:

Sitecore Error Troubleshooting: Sitecore Solr Connectivity Issue:: Part-3


Sitecore 9.1 and Solr Connection issue in Sitecore Azure PaaS XP Scaled Topology or Sitecore on-premise XP Distributed Topology

In my previous articles related to Sitecore Solr connectivity issue, I already explained about:
Part-1: Sitecore Solr connectivity issue details with ways to check the connectivity
Part-2: How to resolve Sitecore Solr connectivity in Sitecore XP Single Topology

In this blog post, we will learn how to validate the Solr configuration in Sitecore Azure PaaS XP Scaled Topology or Sitecore on-premise XP Distributed environment

Architecture Details:

Sitecore XP Scaled environment created.
Solr master url with 02 slaves being used.
The Solr master url is https://12.832.11.201:8983/solr
The Solr load balancer url is https://11.832.11.201
Solr slave’s behind the Load Balancer, so CD will use the Load Balancer url.

Proposed Solution:
I would like to thank DAVID RUCKMAN (@druckman), for sharing knowledge on “Switch Sitecore 9 From Azure Search to Solr -- Step-By-Step Instructions”, this article helps in identifying the Sitecore Solr connectivity issue.

By following “Switch Sitecore 9 From Azure Search to Solr -- Step-By-Step Instructions”, I tried changing the configuration one-by-one and come up with set of configurations which needs to be changed to make connectivity between Sitecore XP Scaled and Solr.

Change the Sitecore configuration in CM or CM App Service:
1. Go to the [WebRoot]\Web.config:
  • Remove the <add key="search:define" value="<Azure or Lucene>" /> and add <add key="search:define" value="Solr" /> 
2. Open [WebRoot]\App_Config\Sitecore\ContentSearch\Sitecore.ContentSearch.Solr.DefaultIndexConfiguration.config:
  • REMOVE or COMMENT below entries:
    • <setting name="ContentSearch.Solr.ServiceBaseAddress" value="https://<URL TO YOUR SOLR INSTANCE>:<PORT NUMBER>/solr" />
    • <setting name="ContentSearch.SearchMaxResults" value="500" />
3. Go to [WebRoot]\App_Config\ConnectionStrings.config:
        I. Search for "solr.search" and update the Solr url with Master Solr Url: -
               <add name="solr.search" connectionString="< URL TO YOUR SOLR MASTER  INSTANCE>:<PORT NUMBER>/solr" />
       II. Search for "cloud.search",  it SHOULD BE EMPTY or COMMENTED :
<add name="cloud.search" connectionString="" />
       III. Remove the  “<add name="collection.search" ... />”

Change the Sitecore configuration in xc-Collect Website/App Service:
1. Disable file [WebRoot]\App_data\config\sitecore\CollectionSearch\sc.Xdb.Collection.IndexReader.AzureSearch.xml 
2. Enable file [WebRoot]\App_data\config\sitecore\CollectionSearch\sc.Xdb.Collection.IndexReader.SOLR.xml
3. Disable file [WebRoot]\App_data\config\sitecore\SearchIndexer\sc.Xdb.Collection.IndexWriter.AzureSearch.xml 4. Enable file [WebRoot]\App_data\config\sitecore\SearchIndexer\sc.Xdb.Collection.IndexWriter.SOLR.xml
5. Disable file [WebRoot]\App_data\jobs\continuous\IndexWorker\App_data\Config\Sitecore\CollectionSearch\sc.Xdb.Collection.IndexReader.AzureSearch.xml
6. Enable file [WebRoot]\App_data\jobs\continuous\IndexWorker\App_data\Config\Sitecore\CollectionSearch\sc.Xdb.Collection.IndexReader.SOLR.xml
7. Enable file [WebRoot]\App_data\jobs\continuous\IndexWorker\App_data\Config\Sitecore\CollectionSearch\sc.Xdb.Collection.WebClient.SOLR.xml
8. Disable file [WebRoot]\App_data\jobs\continuous\IndexWorker\App_data\Config\Sitecore\SearchIndexer\sc.Xdb.Collection.IndexWriter.AzureSearch.xml
9. Enable file [WebRoot]\App_data\jobs\continuous\IndexWorker\App_data\Config\Sitecore\SearchIndexer\sc.Xdb.Collection.IndexWriter.SOLR.xml
10. Update the file [WebRoot]\App_Config\ConnectionStrings.config : 
      I. Remove the  “<add name="collection.search" ... />”
      II. Add <add name="solrCore" connectionString="< URL TO YOUR SOLR MASTER INSTANCE>:<PORT NUMBER>/solr/xdb" />
11. Upddate the file [WebRoot]\App_data\jobs\continuous\IndexWorker\App_config\ConnectionStrings.config: - 
       I. Remove the  “<add name="collection.search" ... />”
       II. Add <add name="solrCore" connectionString="< URL TO YOUR SOLR MASTER  INSTANCE>:<PORT NUMBER>/solr/xdb" />

Change the Sitecore configuration in xc-Ref Data web site/App Service:
1. Disable file [WebRoot]\ App_data\config\sitecore\CollectionSearch\sc.Xdb.Collection.IndexReader.AzureSearch.xml
2. Enable file [WebRoot]\ App_data\config\sitecore\CollectionSearch\sc.Xdb.Collection.IndexReader.SOLR.xml
3. Disable file [WebRoot]\ App_data\config\sitecore\SearchIndexer\sc.Xdb.Collection.IndexWriter.AzureSearch.xml
4. Enable file [WebRoot]\ App_data\config\sitecore\SearchIndexer\sc.Xdb.Collection.IndexWriter.SOLR.xml
5. Disable file [WebRoot]\ App_data\jobs\continuous\IndexWorker\App_data\Config\Sitecore\CollectionSearch\sc.Xdb.Collection.IndexReader.AzureSearch.xml
6. Enable file [WebRoot]\ App_data\jobs\continuous\IndexWorker\App_data\Config\Sitecore\CollectionSearch\sc.Xdb.Collection.IndexReader.SOLR.xml
7. Enable file [WebRoot]\ App_data\jobs\continuous\IndexWorker\App_data\Config\Sitecore\CollectionSearch\sc.Xdb.Collection.WebClient.SOLR.xml
8. Disable file [WebRoot]\ App_data\jobs\continuous\IndexWorker\App_data\Config\Sitecore\SearchIndexer\sc.Xdb.Collection.IndexWriter.AzureSearch.xml
9. Enable file [WebRoot]\ App_data\jobs\continuous\IndexWorker\App_data\Config\Sitecore\SearchIndexer\sc.Xdb.Collection.IndexWriter.SOLR.xml
10. Update the file [WebRoot]\App_Config\ConnectionStrings.config :
      I. Remove the  “<add name="collection.search" ... />”
      II. Add <add name="solrCore" connectionString="< URL TO YOUR SOLR MASTER INSTANCE>:<PORT NUMBER>/solr/xdb" />
11. Upddate the file [WebRoot]\App_data\jobs\continuous\IndexWorker\App_config\ConnectionStrings.config: -
       I. Remove the  “<add name="collection.search" ... />”
       II. Add <add name="solrCore" connectionString="< URL TO YOUR MASTER SOLR INSTANCE>:<PORT NUMBER>/solr/xdb" />


Change the Sitecore configuration in xc-Search web site/App Service:
1. Disable file [WebRoot]\ App_data\config\sitecore\CollectionSearch\sc.Xdb.Collection.IndexReader.AzureSearch.xml
2. Enable file [WebRoot]\ App_data\config\sitecore\CollectionSearch\sc.Xdb.Collection.IndexReader.SOLR.xml
3. Disable file [WebRoot]\ App_data\config\sitecore\SearchIndexer\sc.Xdb.Collection.IndexWriter.AzureSearch.xml
4. Enable file [WebRoot]\ App_data\config\sitecore\SearchIndexer\sc.Xdb.Collection.IndexWriter.SOLR.xml
5. Disable file [WebRoot]\ App_data\jobs\continuous\IndexWorker\App_data\Config\Sitecore\CollectionSearch\sc.Xdb.Collection.IndexReader.AzureSearch.xml
6. Enable file [WebRoot]\ App_data\jobs\continuous\IndexWorker\App_data\Config\Sitecore\CollectionSearch\sc.Xdb.Collection.IndexReader.SOLR.xml
7. Enable file [WebRoot]\ App_data\jobs\continuous\IndexWorker\App_data\Config\Sitecore\CollectionSearch\sc.Xdb.Collection.WebClient.SOLR.xml
8. Disable file [WebRoot]\ App_data\jobs\continuous\IndexWorker\App_data\Config\Sitecore\SearchIndexer\sc.Xdb.Collection.IndexWriter.AzureSearch.xml
9. Enable file [WebRoot]\ App_data\jobs\continuous\IndexWorker\App_data\Config\Sitecore\SearchIndexer\sc.Xdb.Collection.IndexWriter.SOLR.xml
10. Update the file [WebRoot]\App_Config\ConnectionStrings.config :
      I. Remove the  “<add name="collection.search" ... />”
      II. Add <add name="solrCore" connectionString="< URL TO YOUR SOLR MASTER INSTANCE>:<PORT NUMBER>/solr/xdb" />
11. Upddate the file [WebRoot]\App_data\jobs\continuous\IndexWorker\App_config\ConnectionStrings.config: -
       I. Remove the  “<add name="collection.search" ... />”
       II. Add <add name="solrCore" connectionString="< URL TO YOUR MASTER SOLR INSTANCE>:<PORT NUMBER>/solr/xdb" />


Change the Sitecore configuration in CD Website/App Service:
1. Go to the [WebRoot]\Web.config:

Remove the <add key="search:define" value="<Azure or Lucene>" /> and add <add key="search:define" value="Solr" />
2. Open [WebRoot]\App_Config\Sitecore\ContentSearch\Sitecore.ContentSearch.Solr.DefaultIndexConfiguration.config:

REMOVE or COMMENT below entries:
<setting name="ContentSearch.Solr.ServiceBaseAddress" value="https://<URL TO YOUR SOLR MASTER INSTANCE>:<PORT NUMBER>/solr" />
<setting name="ContentSearch.SearchMaxResults" value="500" />
3. Go to [WebRoot]\App_Config\ConnectionStrings.config:
        I. Search for "solr.search" and update the Solr url with Solr Slave Url with Port Number or Solr Load Balancer Url without Port Number: -
               <add name="solr.search" connectionString="< URL TO YOUR SOLR SLAVE INSTANCE>:<PORT NUMBER>/solr" />
       II. Search for "cloud.search",  it SHOULD BE EMPTY or COMMENTED :
       <add name="cloud.search" connectionString="" />
       III. Remove the  “<add name="collection.search" ... />”



After performing configuration changes:
Restart the Sitecore instances or Sitecore Azure App Services.
Login into Sitecore instance and access the Sitecore Launch Pad >  Control Panel > Indexing > Indexing Manager and verify that Solr indexes are loading or not.
If Solr indexes are loading then re-build all the indexes and check count of documents (numDocs) in each Sitecore Solr core at Solr instance.

Note:- 
1.Please update file name .disabled at the end to disable the files
2.remove .disabled from the file name to enable the file

Issue Listing:
Sitecore 9.1 (IaaS and Azure PaaS) + Solr (IaaS) Connectivity
Sitecore Solr Connections
Sitecore Solr Index Configurations
Setting up Solr with Sitecore
Configure Sitecore to work with Solr
Provisioning Sitecore environment using Solr connection
Sitecore.contentsearch.solr.indexes.config
Switch Search Provider in Sitecore

 Sitecore Solr connectivity issue:
• Part-1 : Sitecore Solr connectivity issue details with ways to check the connectivity
Part-2 : How to resolve Sitecore Solr connectivity in Sitecore XP Single Topology


Share:

Sitecore® Technology MVP 2019

Featured Post

Sitecore-Front-end performance tuning points

In the previous Sitecore Performance Tuning article, i tried to explain about that Sitecore website performance depends upon Front-end ...

Total Pageviews

State Counter

Popular

About Me

My photo
Based in Bangalore, INDIA, Amit is a Sitecore MVP and MCC. He has an MCA from the U.P.T.U., INDIA and holds certifications including Sitecore and SharePoint 2007/2010. He is an contributor to Sitecore/MSDN communities and http://amitkumarmca04.blogspot.com/. Amit have experience in Sitecore, ASP.Net with C#, MVC, SharePoint, Classic ASP, VB,Macros,HTML,JavaScript,JSON,BootStrap and AngularJS.

Followers

Follow me on Twitter