nginx反向代理出现upstream timeout的问题排查

现象

    最开始是同样代码部署到新服务器之后很慢,偶尔能够打开

排查

    1. 使用Jmeter持续调用同一个接口,发现存在规律性执行时间过长问题。

    2. 然后在内网直接调用tomcat测试,执行一切正常。
    3. 初步怀疑是nginx的问题,然后配置一个新的端口,该端口直接连上tomcat,过滤掉中间的nginx用以确认是否是nginx问题。结果如下:

    4. 进一步确认是nginx的问题,在服务器上用localhost走nginx反向代理测试。结果如下

解决

定位到nginx问题后,就是百度各种找答案。。。。
最后找到原因是nginx在window下把反向代理中的localhost解析成了ipv6的地址::1,详细解释如下: