我刚刚接管了一个新环境的管理工作。一个已知问题是环境以高响应时间(20 秒以上)着称,所以我想我会打开 haproxy 日志记录并查看发生了什么。我想我会在应用服务器中看到缓慢的加载时间,但实际上我在 HAProxy 中看到了高 Tq 值。HAProxy 在 EC2 上并且不在 ELB 后面。
Sep 5 14:22:00 haproxy-apps01 haproxy[24695]: 76.14.153.221:3371 [05/Sep/2012:14:21:49.780] http-in default_apps/fe04-c 10936/0/0/55/10991 200 488 - - ---- 111/111/0/1/0 0/0 "GET /event_times/next?callback=jQuery170189312373075111_1346854917562&_=1346854918453 HTTP/1.1"
Run Code Online (Sandbox Code Playgroud)
如您所见,这个 Tq 大约为 10 秒。并非所有 Tq 都很高(1+ 秒),但其中很大一部分是(大约 35%)。通常,当我看到这种行为时,我预计会出现网络问题,但是遇到此类问题的访问者比例非常高,所以我想知道是否有人见过这种情况或有任何诊断提示如果问题可能出在这个盒子上?
高 Tq 时间并不总是表明存在问题,是http-server-close
设置了吗?
根据文档:
设置“option http-server-close”可能会显示更长的请求时间,因为“Tq”还测量等待其他请求所花费的时间。
例如,这是为 Stack Overflow 设置的,作为一些示例数据,查询如下:
Select Top 20 Tq from LogsLastTwoDays WITH (NoLOCK) WHERE
CreationDate > DATEADD(minute, -5, GETUTCDATE()) AND
ResponseCode = 200 AND Host = 'stackoverflow.com'
ORDER by Tq DESC
Run Code Online (Sandbox Code Playgroud)
产量:
Tq
-----
14990
14987
14986
14983
14974
14972
14972
14965
14964
14964
14962
14961
14960
14955
14952
14951
14945
14943
14935
14932
Run Code Online (Sandbox Code Playgroud)
这是因为http-server-close
,在我们的环境中,连接对客户端保持打开状态(持久连接)长达timeout http-keep-alive 15s
。
我通常关注Tr
第一个,因为它显示了负载均衡器和服务器之间的响应时间。
归档时间: |
|
查看次数: |
3301 次 |
最近记录: |