LRTM方法
请注意LRTM代表使用监视器的最小响应时间方法(LRTM)。
当负载平衡虚拟服务器配置为使用LRTM方法时,它将使用现有的监视基础设施来获得最快的响应时间。然后,负载平衡虚拟服务器选择活动事务数量最少和响应时间最短的服务。在使用LRTM方法之前,必须将特定于应用程序的监视器绑定到每个服务,并在这些监视器上启用LRTM模式。然后,Citrix ADC设备根据从监视探针计算的响应时间做出负载平衡决策。
您还可以使用LRTM方法对非http和非https服务进行负载平衡。当多个监视器绑定到一个服务时,也可以使用此方法。每个监视器通过使用它为绑定到的服务测量的协议来确定响应时间。然后,虚拟服务器通过计算结果的平均值来计算该服务的平均响应时间。
下表总结了如何计算各种监视器的响应时间。
监控 | 响应时间计算 |
---|---|
平 | ICMP ECHO请求与ICMP ECHO响应的时间差。 |
TCP | SYN请求与SYN+ACK响应的时间差。 |
HTTP | HTTP请求(TCP连接建立后)与HTTP响应之间的时间差。 |
TCP-ECV | 发送数据字符串的时间与返回数据接收字符串的时间之差。没有发送和接收字符串的TCP-ECV监视器被认为具有不正确的配置。 |
HTTP-ECV | HTTP请求和HTTP响应之间的时间差。 |
UDP-ECV | UDP发送字符串和接收字符串的时间差。没有接收字符串的UDP-ECV监视器被认为配置不正确。 |
DNS | DNS查询与DNS响应的时间差。 |
安全和 | SYN请求和SSL握手完成的时间差。 |
FTP | 用户名发送到用户认证完成的时间差。 |
HTTPS(监控HTTPS请求) | 时差与HTTP监视器相同。 |
HTTPS- ecv(监控HTTPS请求) | 时差与HTTP-ECV监视器相同 |
用户 | 发送请求到调度程序的时间与接收到调度程序响应的时间之间的时间差。 |
下面的示例展示了Citrix ADC设备如何使用LRTM方法为负载平衡选择服务。考虑以下三种服务:
- Service-HTTP-1正在处理3个活动事务,响应时间为5秒。
- Service-HTTP-2正在处理7个活动事务,响应时间为1秒。
- Service-HTTP-3不处理任何活动事务,响应时间为两秒。
下图说明了Citrix ADC设备转发请求时遵循的流程。
图1所示。LRTM方法是如何工作的
虚拟服务器通过以下表达式中的值(N)选择服务:
N =(活动事务数*由监视器确定的响应时间)
虚拟服务器发送的请求如下:
- service - http -3接收第一个请求,因为该服务没有处理任何活动事务。
- service - http -3接收第二、第三和第四个请求,因为该服务的N值最低。
- service - http -2接收第五个请求,因为该服务的N值最低。
- 由于Service-HTTP-2和Service-HTTP-3目前具有相同的N值,Citrix ADC设备切换到轮询方法。因此,Service-HTTP-3接收第六个请求。
- service - http -2接收第七个和第八个请求,因为该服务的N值最低。
Service-HTTP-1不考虑负载平衡,因为与其他两个服务相比,它的负载更重(具有最高的N值)。但是,如果service - http -1完成其活动事务,Citrix ADC设备将再次考虑该服务进行负载平衡。
下表总结了如何计算服务的N。
请求得到 | 服务选择 | 当前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-3;(n = 6) | N = 8 | Service-HTTP-3的N值最小。 |
要求5 | Service-HTTP-2;(n = 7) | N = 8 | Service-HTTP-2的N值最小。 |
Request-6 | Service-HTTP-3;(n = 8) | N = 10 | Service-HTTP-2和Service-HTTP-3的N值相同。Citrix ADC设备切换到轮询方法并选择Service-HTTP-3 |
Request-7 | Service-HTTP-2;(n = 8) | N = 9 | Service-HTTP-2的N值最小。 |
Request-8 | Service-HTTP-2;(n = 9) | N = 10 | Service-HTTP-2的N值最小。 |
当Service-HTTP-1完成其活动事务或其N值小于其他服务(Service-HTTP-2和Service-HTTP-3)时,再次选择Service-HTTP-1进行负载平衡。
分配权重时服务的选择
Citrix ADC设备还通过使用活动事务数、响应时间和权重(如果为服务分配了不同的权重)来执行负载平衡。Citrix ADC设备通过使用以下表达式中的值(Nw)来选择服务:
Nw = (N) *(10000 /重量)
其中N =(活动事务数*由监视器确定的响应时间)
下图说明了虚拟服务器在分配权重时如何使用LRTM方法。
图2。当分配权重时,最小响应时间负载均衡方法如何工作
在这个例子中,假设Service-HTTP-1的权重为2,Service-HTTP-2的权重为3,Service-HTTP-3的权重为4。
Citrix ADC设备提供的请求如下:
- Service-HTTP-3接收第一个请求,因为它没有处理任何活动事务。
- service - http -3接收第二、第三、第四和第五个请求,因为此服务具有最低的Nw值。
- service - http -2接收第六个请求,因为该服务具有最低的Nw值。
- service - http -3接收第七个请求,因为该服务的Nw值最低。
- service - http -2接收第八个请求,因为该服务的Nw值最低。
Service-HTTP-1具有最低的权重和最高的Nw值,因此Citrix ADC设备不会选择它进行负载平衡。
下表总结了如何为各种监视器计算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进行负载平衡。
通过命令行方式配置LRTM负载分担方式
在命令提示符中输入;
set lb vserver [-lbMethod ]
例子:
set lb vserver vserver -lb -1 -lbMethod LRTM
通过GUI配置LRTM负载均衡方法
导航到交通管理>负载平衡>虚拟服务器,打开虚拟服务器。
在“高级设置”中选择LRTM。
使用CLI在监视器中启用LRTM选项
在命令提示符中输入;
set lb monitor [-LRTM (ENABLED | DISABLED)]
例子:
设置lb monitor monitor-HTTP-1 HTTP -LRTM ENABLED
通过使用GUI在监视器中启用LRTM选项
- 导航到交通管理>负载平衡>监控,并打开显示器。
- 在“高级参数”中选择LRTM(使用监控的最小响应时间)。
有关配置监视器的详细信息,请参见在负载平衡设置中配置监视器。