[转帖]超时时间connectTimeout,socketTimeout,proxy_read_timeout,proxy_connect_timeout笔记

超时,时间,connecttimeout,sockettimeout,proxy,read,timeout,connect,笔记 · 浏览次数 : 0

小编点评

1、一般的情况下,超时会导致整个结果的失败。任何一个环节的超时都会使连接失败,导致整个程序无法继续运行。 2、从1中的各个层面设置的超时时间看,任何一个环节的超时都会引起整个结果的超时。 3、在任何环节出现超时的情况下,都会导致整个结果的失败。 4、例如,如果设置的proxy_read_timeout和proxy read timeout都设置为10秒,那么客户端发起连接请求后,如果网络不可达,会直接抛异常,等10秒没有回复,就会导致请求超时并导致整个程序失败。

正文

1、一般的的情况

客户端(connectTimeout,socketTimeout) -- 七层接入proxy (connect timeout, read timeout, keepalive timeout, send timeout)-- nginx (proxy_read_timeout,proxy_connect_timeout)-- 后端服务器

connectTimeout:建连时间

程序中设置了connectTimeout, socketTimeout可以防止阻塞,具体地:

如果没有connectTimeout,建立tcp链接时,阻塞,假死;

如果没有socketTimeout,已经建立的tcp链接,在传输过程中,发送的报文可能会因为网络中断引起程序阻塞,假死;

需要注意的是,socket建连时,如果网络层不可达,会直接抛异常,而不是等connectTimeout耗尽。

3、在什么情况下会出现超时?

从1中的各个层面设置的超时时间看,任何一个环节的超时,都可能引起整个结果的超时。

4、举个例子

场景:客户端请求某个链接,链接功能是拿到大数据30天统计的结果。

无论怎么尝试结果都是502,gateway Timeout。

原因:后端处理数据所用的时长超过了proxy_read_timeout或者是proxy read timeout时间限制。(当然这里也有可能其他情况……)

ref:https://blog.csdn.net/wangjun5159/article/details/78140648

 

与[转帖]超时时间connectTimeout,socketTimeout,proxy_read_timeout,proxy_connect_timeout笔记相似的内容:

[转帖]超时时间connectTimeout,socketTimeout,proxy_read_timeout,proxy_connect_timeout笔记

1、一般的的情况 客户端(connectTimeout,socketTimeout) -- 七层接入proxy (connect timeout, read timeout, keepalive timeout, send timeout)-- nginx (proxy_read_timeout,p

[转帖]nginx 的超时设置

前言 我们在使用nginx做反向代理的时候,可能会遇到这个场景:后端正常的业务处理时间超过了nginx的超时时间,导致nginx主动返回504。为解决这个问题,我们网上搜索发现可以通过调整这几个参数来调大nginx的超时时间。 proxy_connect_timeout proxy_send_tim

[转帖]Nginx优化与防盗链

目录 一、配置Nginx隐藏版本号1、第一种方法修改配置文件2、第二种方法修改源码文件,重新编译安装 二、修改Nginx用户与组三、配置Nginx网页缓存时间四、实现Nginx的日志分割五、配置Nginx实现连接超时六、更改Nginx运行进程数七、配置Nginx实现网页压缩功能八、配置Nginx防盗

[转帖]MySQL 慢查询日志深入理解

https://www.jb51.net/article/210312.htm + 目录 什么是慢查询日志 MySQL的慢查询日志是 MySQL提供的一种日志记录,它用来记录在 MySQL 中响应时间超过阀值的语句,具体指运行时间超过long_query_time 值的 SQL,则会被记录到慢查询日

[转帖]nginx http超时重试幂等问题

https://blog.csdn.net/wangtingting_100/article/details/89842557 nginx做反向代理时,作为负载均衡器,对执行失败的任务默认会调度到其他节点执行。 默认设置:proxy_next_upstream error timeout #发生网络

[转帖]REDIS SLOWLOG(慢日志)

slowlog 此命令用于读取和重置Redis慢查询日志。 一、Redis slowlog 官方概述: Redis Slow Log是一个用于记录超过指定执行时间的查询的系统。执行时间不包括与客户端交谈,发送答复等I / O操作,而仅包括实际执行命令所需的时间(这是命令执行的唯一阶段,在该阶段线程被

【转帖】使用 LuaRocks 安装 Apache APISIX 依赖项时,为什么会导致超时、安装缓慢或安装失败?

使用 LuaRocks 安装 Apache APISIX 依赖项时,为什么会导致超时、安装缓慢或安装失败?# http://apisix.incubator.apache.org/zh/docs/apisix/2.14/FAQ/ 可能是因为使用的 LuaRocks 服务器延迟过高。 为了解决这个问题

[转帖]TiDB 中的各种超时

https://docs.pingcap.com/zh/tidb/stable/dev-guide-timeouts-in-tidb 本章将介绍 TiDB 中的各种超时,为排查错误提供依据。 GC 超时 TiDB 的事务的实现采用了 MVCC(多版本并发控制)机制,当新写入的数据覆盖旧的数据时,旧的

[转帖]GC Ergonomics间接引发的锁等待超时问题排查分析

https://www.cnblogs.com/micrari/p/8831834.html 1. 问题背景 上周线上某模块出现锁等待超时,如下图所示:我虽然不是该模块负责人,但出于好奇,也一起帮忙排查定位问题。 这里的业务背景就是在执行到某个地方时,需要去表中插入一批数据,这批数据需要根据数据类型

[转帖]总结:nginx502:Tomcat调优之acceptCount

问题背景:UI页面点击会偶尔返回error,检查调用日志,发现nginx报502报错,因此本文即排查502报错原因。 如下红框可知,访问本机个备机的服务502了,用时3秒左右(可见并不是超时) 先给出原因:是因为tomcat8默认的acceptCount是100,请求量大的时候,会将一些来不及处理的