When you create a global desktop entitlement or global application entitlement, you can specify its Session Load Distribution policy. The Session Load Distribution policy determines which of the underlying Desktop or Application Pool resources are used for new connections, depending on the scope of the global entitlement.

When Load Index is selected as the Session Load Distribution policy, Horizon will attempt to balance the sessions across the resources evenly based on the current load. Horizon calculates the actual load on the server by evaluating the following parameters:
  • For desktop pools, the load index is calculated as (number of sessions * 100/ total number of VMs) in the pool. For example, if the total number of VMs in a desktop pool is 100 and the current session count is 20, the load index is (20 * 100/100) = 20.
  • For RDS pools, Horizon calculates the average load index for the farm by using the load index shared by RDS hosts. (See Configuring Load Balancing for RDS Hosts in Horizon Console in the Desktops and Application in Horizon 8 guide for information on customizing the RDS Host Load Index calculation, if required.) For example, if a farm has 4 RDS hosts and these hosts return 20, 30, 40 and 50 load index, the average load index will be 35, which is the sum of the load index of each hosts/ total number of hosts.
When Session Count is selected as the session distribution policy, Horizon will attempt to balance the sessions across the resources evenly, in proportion to their capacity.
  • For Desktop pools, session count is the total number of sessions / maximum pool size.
  • For RDS Farms, session count is the total number of sessions / maximum session count. Maximum session count is determined based on the Max sessions per RDS Host Farm setting for Automated Instant-Clone farms (150 sessions is used as the default capacity for session load distribution if unlimited is selected), or the Number of connections setting for manual RDSH Farms.

Connected, disconnected, and pending sessions are all included in the total number of sessions calculations.

Table 1. Session Load Distribution Behavior
Global Entitlement Scope Session Load Distribution Behavior
All Sites Distribute the connecting user’s session across all resources within the site they connect to or to the home site (if set). For the selected site, connection is attempted to the least loaded pool/farm within the least loaded Pod.
Note: If a resource is not found, the search continues for a resource in the remaining sites, starting with the least-loaded site, until a resource is found or all sites are exhausted.
Within Site Distribute the connecting user’s session across all resources within the site they connect to. Connection is attempted to the least loaded pool/farm within the least loaded Pod.
Note: The resource search is limited to finding the least loaded resource only in the home site (if set) or in the connecting site.
Within Pod Distribute the connecting user’s session across all resources within the Pod they connect to. Connection is attempted to the least loaded pool/farm.

By default, None is selected for session load distribution policy, which means that Horizon will not attempt to distribute new sessions evenly across the underlying resources.