zoukankan      html  css  js  c++  java
  • nginx响应超时,报错:upstream timed out (110: Connection timed out) while reading response header from upstream

    • 问题描述:
      • [error] 29605#0: *1 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 125.118.102.87, server: www.amai1.com, request: "GET /account/signin HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock", host: "www.amai1.com"
      • 日志文件生成的错误信息有一定的时间延迟
      • 报错信息:
      • 请求日志(同一时间点有多个请求)
    • 解决方法:
      • 根据报错信息查看网上的大部分的原因是:nginx proxy的超时时间太短等nginx配置的优化等,但是修改了之后,依然报同样的错误
      • 根据请求日志的信息:
        • 上述可以看到在同一个时间点出现了两个请求,并且一个成功,一个失败,并且访问日志有很多499响应码的请求。而499响应码是说/* 499, client has closed connection */.就是说客户端主动关闭了连接,或者nginx两次提交post间隔过快也会出现此问题。

            1、客户端主动关闭连接,是因为过了设置的超时时长就会关闭连接。这个又回到了10s的超时时长和频繁的发生time out现象的问题上了。

            2、提交POST请求过快,nginx会认为属于不安全的请求,便主动拒绝连接。这个有可能是客户端那边不间断的测试数据导致,对于这种情况,可以对nginx的配置文件进行配置以下参数来进行不主动关闭。proxy_ignore_client_abort on;(不安全的方式),但是问题依然未解决

      • 最后发现是redis服务器过期了,尴尬了一批,重新续期后,系统恢复了,搞定。
      • 试了一下,数据库服务器连接失败,session服务器过期同样会报上面的错误,所以以后报这样的错,可以看一下是否是数据库,session,redis服务器是否过期
    • 参考文档:http://blog.51cto.com/chenpipi/1682450
    有罪是符合人性的,但长期坚持不改就是魔鬼。
  • 相关阅读:
    深入JavaScript之获取cookie以及删除cookie
    js 首次进入弹窗
    jquery 点击加载更多
    express 设置允许跨域访问
    微信小程序之全局储存
    jquery 在页面上根据ID定位(jQuery锚点跳转及相关操作)
    我也想聊聊 OAuth 2.0 —— 基本概念
    一行代码,发送邮件
    【Git使用】强制推送代码到多个远程仓库
    一秒钟生成自己的iOS客户端
  • 原文地址:https://www.cnblogs.com/yu-yuan/p/9619127.html
Copyright © 2011-2022 走看看