ADC

最少请求次数方法

配置为使用最少请求方法的负载平衡虚拟服务器会选择收到的请求最少的服务。

例如,假设三种服务,即 Service-HTTP-1、Service-HTTP-2 和 Service-HTTP-3。

  • Service-HTTP-1 正在处理 3 个请求。
  • Service-HTTP-2 正在处理 15 个请求。
  • Service-HTTP-3 不处理任何请求。

下图说明了 NetScaler 如何使用最少请求的方法为其收到的每个请求选择服务。

图 1. 最少请求负载平衡方法的工作原理

leastrequest-working

在此示例中,虚拟服务器通过选择请求最少的服务器,为每个传入的请求选择服务。

请求按以下方式转发:

  • Service-HTTP-3 接收第一个请求,因为它不处理任何请求。

    注意:首先选择没有请求的服务。

  • Service-HTTP-3 接收第二和第三个请求,因为该服务的请求数最少。

  • Service-HTTP-1 收到第四个请求是因为 Service-HTTP-1 和 Service-HTTP-3 的请求数量相同,虚拟服务器使用循环方法在它们之间进行选择。

  • Service-HTTP-3 接收第五个请求。

  • Service-HTTP-1 接收第六个请求,依此类推,直到 Service-HTTP-1 和 Service-HTTP-3 处理与 Service-HTTP-2 相同数量的请求。然后,当 Service-HTTP-2 是负载最小的服务或轮到它进入循环队列时,NetScaler 开始将请求转发到 Service-HTTP-2。

注意:

如果对 Service-HTTP-2 的请求已完成,则在其他两个服务都有 15 个请求之前,它可能会收到新的请求。

下表说明了如何在负载平衡设置中的服务之间分配请求。

传入的请求 已选服务 当前的请求数 备注
Request-1 Service-HTTP-3; (N = 0) 1 Service-HTTP-3 的请求最少。
Request-2 service-HTTP-3;(N = 1) 2 Service-HTTP-3 的请求最少。
Request-3 Service-HTTP-3; (N = 2) 3 -
Request-4 Service-HTTP-1; (N = 3) 4 Service-HTTP-1 和 Service-HTTP-3 的请求数量相同。
Request-5 Service-HTTP-3; (N = 3) 4 Service-HTTP-1 和 Service-HTTP-3 的请求数量相同。
Request-6 service-HTTP-1;(N = 4) 5 -
Request-7 Service-HTTP-3; (N = 4) 5 -
Request-8 Service-HTTP-1; (N = 5) 6 -

Service-HTTP-2 完成所有请求时,或者当其他服务(Service-HTTP-1 和 Service-HTTP-3)各有 15 个或更多请求时,会选择 Service-HTTP-2 进行负载平衡。

在为服务分配权重时,NetScaler 还可以使用最小请求方法。它使用以下表达式的值 (Nw) 选择服务:

Nw =(活跃请求数)*(10000/权重)

以下示例显示了在为服务分配权重时,NetScaler 如何使用最小请求方法选择服务进行负载平衡。在前面的示例中,假设 service-HTTP-1 的权重分配为 2,为 service-HTTP-2 分配的权重为 3,为 service-HTTP-3 分配的权重为 4。请求按以下方式转发:

  • Service-HTTP-3 收到第一个请求,因为该服务不处理任何请求。

    注意:如果服务未处理任何请求,则无论分配给每项服务的权重如何,NetScaler 都使用循环方法。

  • Service-HTTP-3 接收第二、第三、第四、第五和第六个请求,因为该服务的 Nw 值最低。

  • Service-HTTP-1 接收第七个请求。由于 S服务HTTP-1 和 Sservice-HTTP-3 现在具有相同的 NW 值,所以设备以循环方式执行负载平衡。因此,Service-HTTP-3 接收第八个请求。

下表说明了如何在前面描述的三服务负载平衡设置上分配请求。

已收到请求 已选服务 当前 Nw(请求数)*(10000/权重)值 备注
Request-1 service-HTTP-3;(Nw = 0) Nw = 2500 Service-HTTP-3 的 Nw 值最低。
Request-2 Service-HTTP-3; (Nw = 2500) Nw = 5000  
Request-3 Service-HTTP-3; (Nw = 5000) Nw = 7500  
Request-4 service-HTTP-3;(Nw = 7500) Nw = 10000  
Request-5 Service-HTTP-3; (Nw = 10000) Nw = 12500  
Request-6 Service-HTTP-3; (Nw = 12500) Nw = 15000  
Request-7 Service-HTTP-1; (Nw = 15000) Nw = 20000 service-http-1 和 service-HTTP-3 具有相同的
Request-8 Service-HTTP-3; (Nw = 15000) Nw = 17500  

当 Service-HTTP-2 完成请求时,或者当其他服务(Service-HTTP-1 和 Service-HTTP-3)的净值等于50000 时,会选择 Service-HTTP-2 进行负载平衡。

下图说明了在为服务分配权重时,NetScaler 如何使用最小请求方法。

图 2. 分配权重时最少请求负载平衡方法的机制

分配权重和方法

要配置最少的请求方法,请参阅配置不包含策略的负载平衡方法

最少请求次数方法

在本文中