通过公共接口连接到端口 80(nginx)时有时会有 1-2 秒的延迟。
这种现象发生的概率为 50%。
一旦连接,nginx 就会以闪电般的速度处理所有请求,包括 fastcgi 代理请求。
我已经确认这不是客户端的DNS解析延迟。
操作系统是Linux 2.6
我应该检查什么才能找出导致此初始延迟接受的原因?
答案1
我会从两件事开始。首先,获取连接在工作时和慢速时的 pcap 捕获。您可以使用 wireshark 或 tcpdump 来执行此操作。Wireshark 将为您提供一个不错的 GUI 来查看它并进行比较。第二是在 nginx 中启用连接调试。如果网络捕获看起来不错,那么您可能会在 nginx 中看到一些资源问题。两者的输出中都应该有时间戳,这样您就可以看到在哪里浪费了时间!