首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

一个TCP TIME_WAIT过高引起的连接mysql超时案例

本文作者:鲁越 问题背景:      客户将mysql从IDC迁移至公有云后,时常有出现建立连接超时的情况,业务使用的场景是PHP短连接到mysql,每秒的新建连接数在3000个左右,这个量算是比较大。...2、超时问题最容易联想到的就是网络上有异常,在物理机上抓包后,抓到在有问题的时间点确实有syn包的重传。...6、要解释第一个问题,我们先来回顾一下TCP四次挥手的流程 image.png         从流程里面我们看到,进入TIME_WAIT状态是先发送FIN包的一方,也就是主动断开连接的一方。...其实这里我们不难找到答案,也很容易猜想出mysql的处理方式:主动发送FIN包来断开这个TCP连接。 这个也就解释了为什么大量进入TIME_WAIT状态的是mysql服务器而不是客户端。...但在实际开启后,我们发现快速回收并没有生效, 这里又涉及到另一个问题:         开启time_wait快速回收需要开启net.ipv4.tcp_timestamps,但是这个参数在有nat网关的环境下开启会导致连接异常

5K52
您找到你想要的搜索结果了吗?
是的
没有找到

socket的连接超时 与 读取写入超时

socket处理时有两种超时 , 分为连接超时 和 读取/写入数据超时 1. stream_socket_client 函数中的超时时间是连接超时 , 默认是php.ini中的default_socket_timeout...配置项 2. stream_set_timeout() 函数设置的是 读取/写入数据超时 3. default_socket_timeout配置项也控制file_get_contents的超时时间 PHP...对于Internet域套接字(AF_INET)(如TCP和UDP),remote_socket参数的目标部分应包含主机名或IP地址,后跟冒号和端口号。...2.errno 如果连接失败,将设置为系统级错误号。 3.errstr 如果连接失败,将设置为系统级错误消息。 4.timeout connect()系统调用应该超时之前的秒数。...注意: 要设置通过套接字读取/写入数据的超时,请使用stream_set_timeout(),因为仅在连接套接字时才应用超时。 5.flags 位掩码字段,可以设置为连接标志的任意组合。

4.8K30

解决SSH连接Linux超时

让人非常恼火,如何解决 SSH 连接 Linux 超时自动断开?...修改服务器相关配置 $TMOUT 系统环境变量 # 用以下命令判断是否是否设置了该参数 echo $TMOUT # 如果输出空或0表示不超时,大于0的数字n表示n秒没有收入则超时 # 修改方法 vi /...profile # ---------------------------- export TMOUT=900 # ---------------------------- # 将以上900修改为0就是设置不超时...设置60表示每分钟发送一次, 然后客户端响应, 这样就保持长连接了。 # ClientAliveCountMax表示服务器发出请求后客户端没有响应的次数达到一定值, 就自动断开。...# 备份原配置文件 cp sshd_config sshd_config.bak # 启用客户端活动检查,每60秒检查一次,3次不活动断开连接 sed -i "s/#ClientAliveInterval

9K50

面向数据连接:TCP

面向连接的传输: TCP TCP:概述 提供的是点对点的服务: 一个发送方,一个接收方 可靠的、按顺序的字节流 : 没有报文边界 管道化(流水线): TCP拥塞控制和流量控制设置 窗口大小 发送和接收...TCP面临的通信场景(往返延时(RTT)和超时 ) 采用自适应的策略和计算。 怎样设置TCP 超时?...TCP在IP不可靠服务的基础上 建立了rdt 管道化的报文段 • GBN or SR (它实现了两者的混合体) 累积确认(像GBN) 单个超时重传定时器(像GBN) 是否可以接受乱序的,没有规范...,但可能超时) 由于丢失造成的重传 (e.g. req_conn(x)) 报文乱序 相互看不到对方 2次握手失败的场景: Client发送了建立连接的请求, 然后Server收到连接请求, 并且进行了确认...就不会出现老数据传输 TCP 三次握手 : FSM TCP: 关闭连接 客户端,服务器分别关闭它自己这一侧的连接【通过发送FIN bit = 1的TCP段 】 一旦接收到FIN,用ACK回应 【

8010

速读原著-TCPIP(TCP超时与重传)

第21章 TCP超时与重传 21.1 引言 T C P提供可靠的运输层。它使用的方法之一就是确认从另一端收到的数据。但数据和确认都有可能会丢失。 T C P通过在发送时设置一个定时器来解决这种问题。...对任何实现而言,关键之处就在于超时和重传的策略,即怎样决定超时间隔和如何确定重传的频率。...对每个连接,T C P管理4个不同的定时器。 重传定时器使用于当希望收到另一端的确认。在本章我们将详细讨论这个定时器以及一些相关的问题,如拥塞避免。...保活( k e e p a l i v e )定时器可检测到一个空闲连接的另一端何时崩溃或重启。第 2 3章将描述这个定时器。...2MSL定时器测量一个连接处于 T I M E _ WA I T状态的时间。我们在 1 8 . 6节对该状态进行了介绍。 本章以一个简单的 T C P超时和重传的例子开始,然后转向一个更复杂的例子。

1K20

修改Apache的超时设置,解决长连接请求超时问题

某日,组内后台开发找到我,问我们的 WEB 服务器超时设置是多少。他反馈的问题是,有一个 VLAN 切换任务 cgi 接口经常返回 504 网关超时错误,要我分析解决下。...我问了一下,得知这个请求遇到网络设备对象较多的时候,需要小半个小时才能完成,也就是要用到长连接才行。...老规矩,从开发那拿到接口地址,得到接入层服务器 IP,是一台 Haproxy 代理,看了一下 Haproxy 的超时设置: # 设置成功连接到一台服务器的最长等待时间,默认单位是毫秒,新版本的haproxy...使用timeout connect替代,该参数向后兼容 contimeout 3600 # 设置连接客户端发送数据时的成功连接最长等待时间,默认单位是毫秒,新版本haproxy使用timeout client...重载之后,就不会出现 504 网关超时设置了。

14.8K90

海豚调度连接Zookeeper超时定位

# 海豚调度连接Zookeeper超时定位 # 过程 在本地启动海豚调度的服务,出现zookeeper connect timeout异常,但是检查zookeeper节点都是正常的。.... 45 common frames omitted 在配置文件中其中一个关键的配置:registry.block.until.connected.wait,意思是curator等待zookeeper连接超时...等待连接,超出配置时间异常退出 if (!...发现程序初始化完成,开始连接zookeeper,但迟迟没有发送tcp握手包,在这情况下,我开始怀疑代码的问题了。...,这个操作不常见,原理是通过DNS查询PTR记录,但一般来说DNS服务器是没有这个记录,所以查询不到,查询不到就会从本地的hosts文件找,在都找不到的情况下,这过程大概会阻塞个20秒,海豚设置的创建连接超时

1.7K40

ORA-12170:TNS:连接超时

在Red Hat Enterprise Linux Server release 6.7 成功安装ORACLE 11g 后,在客户端配置TNS后,测试是否可以连接到数据块服务器,结果报错: ORA-12170...:TNS:连接超时 1:首先检查网络是否能ping通,如下所示,网络是畅通的。...The command completed successfully 4:使用tnsping命令检查,报TNS-12535: TNS: 操作超时,这时我们可以肯定是防火墙的问题了。...TNS-12535: TNS: 操作超时 对于防火墙问题,我们可以有两种解决方案: 1:关闭防火墙(这种方案不怎么好,关闭防火墙,会带来许多安全隐患) [root@wgods ~]# service iptables.../0 reject-with icmp-host-prohibited [root@wgods sysconfig]# 从客户端用PL/SQL Developer连接数据库,问题解决。

5K50

速读原著-TCPIP(连接建立的超时)

第18章 TCP连接的建立与终止 18.3 连接建立的超时 有很多情况导致无法建立连接。一种情况是服务器主机没有处于正常状态。...另外,因为这是系统启动后的第一个TCP连接,因此客户的端口号是1024。 图1 8 - 6中没有显示客户端在放弃建立连接尝试前进行 S Y N重传的时间。...大多数伯克利系统将建立一个新连接的最长时间限制为 7 5秒。...我们将在2 1 . 4节看到由客户发出的第 3个分组大约在1 6 : 2 5 : 2 9超时, 客户在它第3个分组发出后4 8秒而不是7 5秒后放弃连接。...18.3.1 第一次超时时间 在图1 8 - 6中一个令人困惑的问题是第一次超时时间为 5 . 8秒,接近6秒,但不准确,相比之下第二个超时时间几乎准确地为 2 4秒。

1.4K20

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券