当前位置: 首页 > news >正文 品牌网站开发天健oa管理系统 news 2025/10/23 21:56:54 品牌网站开发,天健oa管理系统,内网网站如何建设,视频的网站自助建站几个方面#xff1a; 问题描述#xff1a;什么现象#xff1f;什么影响#xff1f; 问题分析 解决方案 底层原理 1.问题描述 模拟高并发的场景#xff0c;会出现批量的 TIME_WAIT 的 TCP 连接#xff1a; 短时间后#xff0c;所有的 TIME_WAIT 全都消失#xff0…几个方面 问题描述什么现象什么影响 问题分析 解决方案 底层原理 1.问题描述 模拟高并发的场景会出现批量的 TIME_WAIT 的 TCP 连接 短时间后所有的 TIME_WAIT 全都消失被回收端口包括服务均正常。 即在高并发的场景下TIME_WAIT 连接存在属于正常现象。 线上场景中持续的高并发场景 一部分 TIME_WAIT 连接被回收但新的 TIME_WAIT 连接产生 一些极端情况下会出现大量的 TIME_WAIT 连接。 Think 上述大量的 TIME_WAIT 状态 TCP 连接有什么业务上的影响吗 Nginx 作为反向代理时大量的短链接可能导致 Nginx 上的 TCP 连接处于 time_wait 状态 每一个 time_wait 状态都会占用一个「本地端口」上限为 65535(16 bit2 Byte) 当大量的连接处于 time_wait 时新建立 TCP 连接会出错address already in use : connect 异常 统计 TCP 连接的状态 1. // 统计各种连接的数量 2. $ netstat -n | awk /^tcp/ {S[$NF]} END {for(a in S) print a, S[a]} 3. ESTABLISHED 1154 4. TIME_WAIT 1645 Tips TCP 本地端口数量上限为 655356.5w这是因为 TCP 头部使用 16 bit存储「端口号」因此约束上限为 65535。 2.问题分析 大量的 TIME_WAIT 状态 TCP 连接存在其本质原因是什么 大量的短连接存在 特别是 HTTP 请求中如果 connection 头部取值被设置为 close 时基本都由「服务端」发起主动关闭连接 而TCP 四次挥手关闭连接机制中为了保证 ACK 重发和丢弃延迟数据设置 time_wait 为 2 倍的 MSL报文最大存活时间 TIME_WAIT 状态 TCP 连接中主动关闭连接的一方出现的状态收到 FIN 命令进入 TIME_WAIT 状态并返回 ACK 命令 保持 2 个 MSL 时间即4 分钟MSL 为 2 分钟 3.解决办法 解决上述 time_wait 状态大量存在导致新连接创建失败的问题一般解决办法 1、客户端HTTP 请求的头部connection 设置为 keep-alive保持存活一段时间现在的浏览器一般都这么进行了 2、服务器端 允许 time_wait 状态的 socket 被重用 缩减 time_wait 时间设置为 1 MSL即2 mins 结论几个核心要点 1、 time_wait 状态的影响 TCP 连接中「主动发起关闭连接」的一端会进入 time_wait 状态 time_wait 状态默认会持续 2 MSL报文的最大生存时间一般是 2x2 mins time_wait 状态下TCP 连接占用的端口无法被再次使用 TCP 端口数量上限是 6.5w6553516 bit 大量 time_wait 状态存在会导致新建 TCP 连接会出错address already in use : connect 异常 2、 现实场景 服务器端一般设置不允许「主动关闭连接」 但 HTTP 请求中http 头部 connection 参数可能设置为 close则服务端处理完请求会主动关闭 TCP 连接 现在浏览器中 HTTP 请求 connection 参数一般都设置为 keep-alive Nginx 反向代理场景中可能出现大量短链接服务器端可能存在 3、 解决办法服务器端 允许 time_wait 状态的 socket 被重用 缩减 time_wait 时间设置为 1 MSL即2 mins 相关视频推荐 10道tcp/ip的问题让你对网络不再发怵 100行代码实现一个用户态协议栈 手写一个epoll组件实现tcp的并发 免费学习地址c/c linux服务器开发/后台架构师 需要C/C Linux服务器架构师学习资料加qun579733396获取资料包括C/CLinuxgolang技术NginxZeroMQMySQLRedisfastdfsMongoDBZK流媒体CDNP2PK8SDockerTCP/IP协程DPDKffmpeg等免费分享 4.附录 几个方面 TCP 连接状态的查询 MSL 时间 TCP 三次握手和四次握手 附录 A查询 TCP 连接状态 Mac 下查询 TCP 连接状态的具体命令 1. // Mac 下查询 TCP 连接状态 2. $ netstat -nat |grep TIME_WAIT 3. 4. // Mac 下查询 TCP 连接状态其中 -E 表示 grep 或的匹配逻辑 5. $ netstat -nat | grep -E TIME_WAIT|Local Address 6. Proto Recv-Q Send-Q Local Address Foreign Address (state) 7. tcp4 0 0 127.0.0.1.1080 127.0.0.1.59061 TIME_WAIT 8. 9. // 统计各种连接的数量 10. $ netstat -n | awk /^tcp/ {S[$NF]} END {for(a in S) print a, S[a]} 11. ESTABLISHED 1154 12. TIME_WAIT 1645 附录 BMSL 时间 MSLMaximum Segment Lifetime“报文最大生存时间” 任何报文在网络上存在的最长时间超过这个时间报文将被丢弃。IP 报文 TCP报文 segment是ip数据报datagram的数据部分。 Tips RFC 793中规定MSL为2分钟实际应用中常用的是30秒1分钟和2分钟等。 2MSLTCP 的 TIME_WAIT 状态也称为2MSL等待状态 当TCP的一端发起主动关闭收到 FIN 请求在发出最后一个ACK 响应后即第3次握 手完成后发送了第四次握手的ACK包后就进入了TIME_WAIT状态。 必须在此状态上停留两倍的MSL时间等待2MSL时间主要目的是怕最后一个 ACK包对方没收到那么对方在超时后将重发第三次握手的FIN包主动关闭端接到重发的FIN包后可以再发一个ACK应答包。 在 TIME_WAIT 状态时两端的端口不能使用要等到2MSL时间结束才可继续使用。IP 层 当连接处于2MSL等待阶段时任何迟到的报文段都将被丢弃。 不过在实际应用中可以通过设置 「SO_REUSEADDR选项」达到不必等待2MSL时间结束即可使用被占用的端口。 附录 CTCP 三次握手和四次握手 详细细节参考 TCP的三次握手与四次挥手详解动图 具体示意图 三次握手建立连接过程 四次挥手释放连接过程 几个核心疑问 1、 time_wait 是「服务器端」的状态or 「客户端」的状态 REtime_wait 是「主动关闭 TCP 连接」一方的状态可能是「客服端」的也可能是「服务器端」的 一般情况下都是「客户端」所处的状态「服务器端」一般设置「不主动关闭连接」 2、 服务器在对外服务时是「客户端」发起的断开连接还是「服务器」发起的断开连接 正常情况下都是「客户端」发起的断开连接 「服务器」一般设置为「不主动关闭连接」服务器通常执行「被动关闭」 但 HTTP 请求中http 头部 connection 参数可能设置为 close则服务端处理完请求会主动关闭 TCP 连接 关于 Apache httpd 服务器的关联配置参考https://elf8848.iteye.com/blog/1739571 关于 HTTP 请求中设置的主动关闭 TCP 连接的机制TIME_WAIT的是主动断开方才会出现的所以主动断开方是服务端 答案是是的。在HTTP1.1协议中有个 Connection 头Connection有两个值close和keep-alive这个头就相当于客户端告诉服务端服务端你执行完成请求之后是关闭连接还是保持连接保持连接就意味着在保持连接期间只能由客户端主动断开连接。还有一个keep-alive的头设置的值就代表了服务端保持连接保持多久。 HTTP默认的Connection值为close那么就意味着关闭请求的一方几乎都会是由服务端这边发起的。那么这个服务端产生TIME_WAIT过多的情况就很正常了。 虽然HTTP默认Connection值为close但是现在的浏览器发送请求的时候一般都会设置Connection为keep-alive了。所以也有人说现在没有必要通过调整参数来使TIME_WAIT降低了。 关于 time_wait 1、TCP 连接建立后「主动关闭连接」的一端收到对方的 FIN 请求后发送 ACK 响应会处于 time_wait 状态 2、 time_wait 状态存在的必要性 可靠的实现 TCP 全双工连接的终止四次挥手关闭 TCP 连接过程中最后的 ACK 是由「主动关闭连接」的一端发出的如果这个 ACK 丢失则对方会重发 FIN 请求因此在「主动关闭连接」的一段需要维护一个 time_wait 状态处理对方重发的 FIN 请求 处理延迟到达的报文由于路由器可能抖动TCP 报文会延迟到达为了避免「延迟到达的 TCP 报文」被误认为是「新 TCP 连接」的数据则需要在允许新创建 TCP 连接之前保持一个不可用的状态等待所有延迟报文的消失一般设置为 2 倍的 MSL报文的最大生存时间解决「延迟达到的 TCP 报文」问题 文章转载自: http://www.morning.ymmjx.cn.gov.cn.ymmjx.cn http://www.morning.rmxk.cn.gov.cn.rmxk.cn http://www.morning.rnngz.cn.gov.cn.rnngz.cn http://www.morning.lbfgq.cn.gov.cn.lbfgq.cn http://www.morning.3dcb8231.cn.gov.cn.3dcb8231.cn http://www.morning.qwmdx.cn.gov.cn.qwmdx.cn http://www.morning.brwei.com.gov.cn.brwei.com http://www.morning.gsyns.cn.gov.cn.gsyns.cn http://www.morning.rmtmk.cn.gov.cn.rmtmk.cn http://www.morning.cfcdr.cn.gov.cn.cfcdr.cn http://www.morning.lkfsk.cn.gov.cn.lkfsk.cn http://www.morning.rui931.cn.gov.cn.rui931.cn http://www.morning.kmwbq.cn.gov.cn.kmwbq.cn http://www.morning.hrzymy.com.gov.cn.hrzymy.com http://www.morning.hqllj.cn.gov.cn.hqllj.cn http://www.morning.cwgn.cn.gov.cn.cwgn.cn http://www.morning.fbhmn.cn.gov.cn.fbhmn.cn http://www.morning.ktcrr.cn.gov.cn.ktcrr.cn http://www.morning.pdmc.cn.gov.cn.pdmc.cn http://www.morning.lpzqd.cn.gov.cn.lpzqd.cn http://www.morning.ldynr.cn.gov.cn.ldynr.cn http://www.morning.mdtfh.cn.gov.cn.mdtfh.cn http://www.morning.spwm.cn.gov.cn.spwm.cn http://www.morning.lxlfr.cn.gov.cn.lxlfr.cn http://www.morning.ylxgw.cn.gov.cn.ylxgw.cn http://www.morning.twdkt.cn.gov.cn.twdkt.cn http://www.morning.ryrpq.cn.gov.cn.ryrpq.cn http://www.morning.bkjhx.cn.gov.cn.bkjhx.cn http://www.morning.rlqqy.cn.gov.cn.rlqqy.cn http://www.morning.sjwzl.cn.gov.cn.sjwzl.cn http://www.morning.mlnzx.cn.gov.cn.mlnzx.cn http://www.morning.qzpsk.cn.gov.cn.qzpsk.cn http://www.morning.qwrb.cn.gov.cn.qwrb.cn http://www.morning.nlryq.cn.gov.cn.nlryq.cn http://www.morning.mwmtk.cn.gov.cn.mwmtk.cn http://www.morning.nrjr.cn.gov.cn.nrjr.cn http://www.morning.ngzkt.cn.gov.cn.ngzkt.cn http://www.morning.swkzr.cn.gov.cn.swkzr.cn http://www.morning.ylkkh.cn.gov.cn.ylkkh.cn http://www.morning.tslfz.cn.gov.cn.tslfz.cn http://www.morning.twwts.com.gov.cn.twwts.com http://www.morning.rymd.cn.gov.cn.rymd.cn http://www.morning.fprll.cn.gov.cn.fprll.cn http://www.morning.rfpb.cn.gov.cn.rfpb.cn http://www.morning.ypdhl.cn.gov.cn.ypdhl.cn http://www.morning.qflwp.cn.gov.cn.qflwp.cn http://www.morning.zypnt.cn.gov.cn.zypnt.cn http://www.morning.gpsr.cn.gov.cn.gpsr.cn http://www.morning.jlboyuan.cn.gov.cn.jlboyuan.cn http://www.morning.wjxtq.cn.gov.cn.wjxtq.cn http://www.morning.pmghz.cn.gov.cn.pmghz.cn http://www.morning.weitao0415.cn.gov.cn.weitao0415.cn http://www.morning.mrtdq.cn.gov.cn.mrtdq.cn http://www.morning.jjnry.cn.gov.cn.jjnry.cn http://www.morning.wztnh.cn.gov.cn.wztnh.cn http://www.morning.lgqdl.cn.gov.cn.lgqdl.cn http://www.morning.plcyq.cn.gov.cn.plcyq.cn http://www.morning.jlpdc.cn.gov.cn.jlpdc.cn http://www.morning.ggtkk.cn.gov.cn.ggtkk.cn http://www.morning.qlxgc.cn.gov.cn.qlxgc.cn http://www.morning.tgxrm.cn.gov.cn.tgxrm.cn http://www.morning.sbkb.cn.gov.cn.sbkb.cn http://www.morning.xqjrg.cn.gov.cn.xqjrg.cn http://www.morning.ssrjt.cn.gov.cn.ssrjt.cn http://www.morning.nqrdx.cn.gov.cn.nqrdx.cn http://www.morning.bxfy.cn.gov.cn.bxfy.cn http://www.morning.cgmzt.cn.gov.cn.cgmzt.cn http://www.morning.cndxl.cn.gov.cn.cndxl.cn http://www.morning.mpwgs.cn.gov.cn.mpwgs.cn http://www.morning.trqzk.cn.gov.cn.trqzk.cn http://www.morning.bmqls.cn.gov.cn.bmqls.cn http://www.morning.ljjph.cn.gov.cn.ljjph.cn http://www.morning.xfxnq.cn.gov.cn.xfxnq.cn http://www.morning.pqhgn.cn.gov.cn.pqhgn.cn http://www.morning.nxpqw.cn.gov.cn.nxpqw.cn http://www.morning.rdnjc.cn.gov.cn.rdnjc.cn http://www.morning.hxrg.cn.gov.cn.hxrg.cn http://www.morning.cgtrz.cn.gov.cn.cgtrz.cn http://www.morning.cjqqj.cn.gov.cn.cjqqj.cn http://www.morning.rlhgx.cn.gov.cn.rlhgx.cn 查看全文 http://www.tj-hxxt.cn/news/240486.html 相关文章: 如何建设网站导航内链接视频拍摄公司推荐 如何写好网站建设方案做图表的网站推荐 菏泽做网站淘宝导购网站模版 合川网站制作网站建设源码修改 做设计排版除了昵图网还有什么网站wiki能用wordpress 上海专业网站营销全球排名前十网站 松原市建设局网站投诉中心秦皇岛做网站优化 重庆网站建设招聘信息国内全屏网站欣赏 国外做vj的网站xp系统中做网站服务器吗 网站建设研究背景网站建设温江 怎么建网站做上海家装博览会2023年时间 定州建设项目网站诊断与优化的作用 泉州网站制作案例建设一个网站的流程图 专业网站建设收费网销是什么工作好做吗 最容易被收录的网站wordpress后台系统 网站开发的目的和意义农业信息免费发布平台 潍坊网站建设一品网络小程序数据分析培训课程 东莞网站制作找哪里查域名服务器地址 汕头 网站建设怎么建设微信网站 做网站有那几种末班网上销售方法 深州做网站公司上海网站建设有限公司 江西省建设网站公司百度seo技术 用模板做的网站权重高吗公司标志logo 如何搭建公司内部网站gstatic wordpress 创新的做pc端网站房地产电子商务的网站建设 火锅网站建设wordpress主题改字体 网站开发三个月能学会吗wordpress登录功能 加强企业网站建设门户网站应该怎么做 发稿类别是什么怎么给自己的网站做seo wap网站域名搭建一个论坛有什么要求