我在 EC2 上部署了一个 Tomcat 应用程序,位于应用程序负载均衡器后面。负载均衡器的警报设置为
TargetResponseTime
,看起来像 该指标表明响应时间不能大于 1 毫秒 - 但当我查看图表时,有多个目标响应时间超过 2000 毫秒的实例 。
然而,闹钟只是有时会响,而不是一直响。
为什么闹钟几乎一直不响?
如果您遵循
target_processing_time
的 ELB 访问日志定义
:
The total time elapsed (in seconds, with millisecond precision)
from the time the load balancer sent the request to a target
until the target started to send the response headers.
这是亚马逊提供的一个相当愚蠢的统计数据,并且“真的”没有那么有用。如果您的网络应用程序没有缓冲并立即输出响应标头,则该值将始终较低,并且对您的实际性能影响不大。更好的方法是在应用程序中跟踪您自己的交付时间并为其发布自定义指标。