NetScaler

最小响应时间法

当负载均衡虚拟服务器配置为使用最小响应时间方法时,它将选择活动连接最少和平均响应时间最短的服务。只有HTTP和SSL (Secure Sockets Layer)负载均衡的虚拟服务器才能配置此方法。响应时间(也称为到第一个字节的时间,或TTFB)是向服务发送请求数据包和从服务接收第一个响应数据包之间的时间间隔。NetScaler设备使用响应码200来计算TTFB。

下面的示例展示了虚拟服务器如何使用最小响应时间方法选择负载平衡服务。考虑以下三种服务:

  • Service-HTTP-1正在处理3个活动事务,TTFB是2秒。
  • Service-HTTP-2正在处理7个活动事务,TTFB是1秒。
  • Service-HTTP-3不处理任何活动事务,TTFB为2秒。

下图说明了NetScaler设备如何使用响应时间最短的方法来转发连接。

图1所示。最小响应时间负载均衡方法是如何工作的

least-response-time-mechanism

虚拟服务器通过将活动事务数乘以每个服务的TTFB来选择服务,然后选择结果最低的服务。对于上面的示例,虚拟服务器转发请求如下:

  • service - http -3接收第一个请求,因为该服务没有处理任何活动事务。
  • Service-HTTP-3还接收第二个和第三个请求,因为结果是三个服务中最低的。
  • Service-HTTP-1接收第四个请求。由于Service-HTTP-1和Service-HTTP-3具有相同的结果,因此NetScaler设备通过应用轮询方法在它们之间进行选择。
  • Service-HTTP-3接收第五个请求。
  • Service-HTTP-2接收第六个请求,因为此时它的结果最低。
  • 因为Service-HTTP-1、Service-HTTP-2和Service-HTTP-3此时都有相同的结果,所以设备切换到轮询方法,并继续使用该方法分发连接。

下表解释了在上述三服务负载平衡设置中连接是如何分布的。

请求得到 服务选择 当前N值(活动事务数* TTFB) 讲话
要求1 服务- http -3 (N = 0) N = 2 Service-HTTP-3的N值最小。
请求2 Service-HTTP-3;(n = 2) N = 4 Service-HTTP-3的N值最小。
要求3 Service-HTTP-3;(n = 4) N = 6 Service-HTTP-3的N值最小。
要求4 Service-HTTP-1;(n = 6) N = 8 Service-HTTP-1和Service-HTTP-3的N值相同。设备使用轮询方法分发请求。
要求5 Service-HTTP-3;(n = 6) N = 8 Service-HTTP-1和Service-HTTP-3的N值相同。
Request-6 Service-HTTP-2;(n = 7) N = 8 Service-HTTP-2的N值最小。
Request-7 Service-HTTP-3;(n = 8) N = 10 Service-HTTP-1、Service-HTTP-2和Service-HTTP-3的N值相同。NetScaler设备使用轮询方法来分发请求。
Request-8 Service-HTTP-1;(n = 8) N = 10 Service-HTTP-1和Service-HTTP-2具有相同的N值,设备使用轮询方法分发请求。

当Service-HTTP-1完成其活动事务或其N值小于其他服务(Service-HTTP-2和Service-HTTP-3)时,再次选择Service-HTTP-1进行负载平衡。

分配权重时服务的选择

下图说明了NetScaler设备在分配权重时如何使用最小响应时间方法。

图2。当分配权重时,最小响应时间负载均衡方法如何工作

LRTweights

虚拟服务器通过以下表达式中的值(Nw)选择服务:

Nw = (N) * (10000 / weight)其中N =(活动事务数* TTFB)

假设Service-HTTP-1的权重为2,Service-HTTP-2的权重为3,Service-HTTP-3的权重为4。

NetScaler设备按如下方式分配请求:

  • Service-HTTP-3接收第一个请求,因为它没有处理任何活动事务。

    如果服务没有处理任何活动事务,则设备将选择它们,而不考虑分配给它们的权重。

  • service - http -3接收第二、第三、第四和第五个请求,因为此服务具有最低的Nw值。

  • service - http -2接收第六个请求,因为该服务具有最低的Nw值。

  • service - http -3接收第七个请求,因为该服务的Nw值最低。

  • service - http -2接收第八个请求,因为该服务具有最低的Nw值。

Service-HTTP-1的权重最低,因此Nw值最高,因此虚拟服务器不会选择它进行负载均衡。

下表解释了在上述三服务负载平衡设置中连接是如何分布的。

请求得到 服务选择 当前Nw值= (N) *(10000 /重量) 讲话
要求1 Service-HTTP-3;(Nw = 0) Nw = 5000 Service-HTTP-3的Nw值最低。
请求2 Service-HTTP-3;(Nw = 5000 Nw = 10000 Service-HTTP-3的Nw值最低。
要求3 Service-HTTP-3;(Nw = 10000) Nw = 15000 Service-HTTP-3的Nw值最低。
要求4 Service-HTTP-3;(Nw = 15000) Nw = 20000 Service-HTTP-3的Nw值最低。
要求5 Service-HTTP-3;(Nw = 20000) Nw = 25000 Service-HTTP-3的Nw值最低。
Request-6 Service-HTTP-2;(Nw = 23333.34) Nw = 26666.67 Service-HTTP-2的Nw值最低。
Request-7 Service-HTTP-3;(Nw = 25000) 西北= 30000 Service-HTTP-3的Nw值最低。
Request-8 Service-HTTP-2;(Nw = 26666.67) Nw = 30000 Service-HTTP-2的Nw值最低。

当Service-HTTP-1完成其活动事务或其Nw值小于其他服务(Service-HTTP-2和Service-HTTP-3)时,选择Service-HTTP-1进行负载平衡。

通过CLI配置响应时间最短的负载均衡方式

在命令提示符中输入;

set lb vserver  -lbMethod LEASTRESPONSETIME 

例子:

set lb vserver vserver -lb -1 -lbMethod LEASTRESPONSETIME 

通过使用GUI配置响应时间最少的负载平衡方法

  1. 导航到交通管理>负载平衡>虚拟服务器,打开虚拟服务器。
  2. 在“高级设置”中选择LEASTRESPONSETIME

有关配置监视器的详细信息,请参见在负载平衡设置中配置监视器

最小响应时间法