How to Load Balance Queries using CES Mirror and Coveo for Sitecore

On-Premises only


This article explains how you can use a Network Load Balancer (more here) in combination with CES Mirrors (more here) to distribute queries from Sitecore CDs to many CES Servers. Doing so decreases query time and increases performance while providing a better user experience (via faster queries).


This guide is based on the following scenario:

  • 1 Sitecore Content Authoring Server (CM)
  • 2 Sitecore Content Delivery Servers (CD)
  • 1 CES Master Server
  • 1 CES Mirror Server
  • A Network Load Balancer, Virtual or Physical, configured to redistribute traffic (more here).

The above environment is for descriptive purposes only. The principles presented in this article can be applied to any number of CD or Mirrors.


  • Coveo for Sitecore 863+

  • Configuration

  • Mirrors, Load Balancing, REST API


Things to Know

  • Coveo for Sitecore 4.1 (November 2018)LINQ queries use port 52810 (can’t be changed)
  • Regular Queries use the port specified in the REST API config.yml (more here). Port 8080 is selected by default)
  • The two scenarios presented below are equivalent in terms of performance. The only difference is the number of open ports required.

Additional Guides

Scenario 1: REST API Installed on CES Mirrors and Master Server (2 Ports Open)

Scenario 2: REST API Installed on Sitecore CDs (1 Port Open)