TCP/IP(九)TCP的连接管理(六)TIME_WAIT状态探究

一  TIME_WAIT探究

要明确'TIME_WAIT'状态在'tcp四次挥手'的阶段 

①  为什么 TIME_WAIT 等待的时间是 2MSL?

背景: 客户端在收到服务端'第三次FIN挥手'后,就会进入TIME_WAIT 状态,开启时长为2MSL的定时器1、MSL 是 Maximum Segment Lifetime '报文最大生存时间'2、2MSL 的'时间'是从客户端接收到 '第三次握手的'FIN 后发送 ACK '开始计时'的3、Linux 系统'停留'在 TIME_WAIT 的时间为'固定'的 '60' 秒4、客户端在收到服务端'重传的 FIN' 报文时,TIME_WAIT 状态的'等待时间'会'重置'回 2MSL

②  为什么需要 TIME_WAIT 状态? 

说明: 关于这个'知识点'了解即可TIME-WAIT 作用是'等待足够的时间'以确保'最后的ACK'能让'被动关闭方'接收,从而帮助其正常关闭

③  TIME_WAIT 过多有什么危害?

客户端和服务端 TIME_WAIT 过多,造成的影响是'不同'的服务端: 占用'系统'资源,比如文件描述符、内存资源、CPU 资源、线程资源等;客户端: 占用'端口'资源,端口资源也是有限的 --> '常见,服务器只安装某个服务'重点: ' TIME_WAIT 状态'的TCP连接不会'释放'占用的资源

nginx 服务产生大量的TIME_WAIT

④  如何优化 TIME_WAIT?

说明: 非必要不要'调整'这些参数

方式'1': 'net.ipv4.tcp_tw_reuse' 和 'tcp_timestamps'net.ipv4.tcp_tw_reuse = 1表示开启重用,允许将TIME-WAIT socket 重新用于新的TCP连接默认为0,表示'关闭'

方式'2': net.ipv4.tcp_max_tw_buckets  --> 'TIME_WAIT' 上限值 

方式'3':程序中使用 SO_LINGER  --> '了解即可'

⑤  服务器出现大量 TIME_WAIT 状态原因有哪些?

第'1'个场景: HTTP '没有'使用'长'连接说明: 现代'浏览器'和'web服务器'基本都遵从'HTTP/1.1'协议,所以这个'场景'了解即可

HTTP '短连接': 每次HTTP'请求响应'结束,都会'销毁、重建'TCP连接

第'2'个场景: HTTP '长连接超时'

说明: 如何'避免TCP 连接'资源浪费的情况,避免长时间'wait 空等待'

图谱: nginx 的 'keepalive_timeout  60s' 工作机制 --> '一次HTTP请求和响应'

第'3'个场景: HTTP 长连接的'请求数量'达到'上限'备注: 压测时最'明显'keepalive_requests  跟 'QPS' 有关

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/107454.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

3500/15 106M1079-01 支持先进和复杂的人工智能计算

3500/15 106M1079-01 支持先进和复杂的人工智能计算 耐能NPU IP系列允许ResNet、YOLO和其他深度学习网络在离线环境下的边缘设备上运行。耐能NPU IP为edge AI提供完整的硬件解决方案,包括硬件IP、编译器、模型压缩。它支持各种类型的卷积神经网络(CNN)模型&#xf…

架构真题2017(五十三)

在磁盘上存储数据的排列方式会影响 I/O服务的总时间。假设每磁道划分成10个物理块,每块存放1个逻辑记录。逻辑记录R1,R2, ..., RI0存放在同一个磁道上, 记录的安排顺序如下表所示 ; 假定磁盘的旋转速度为30ms/周&…

某游戏公司Java面试八股文总结

1.值传递和引用传递区别?Java中为什么都是值传递? 值传递(Pass by Value): 在值传递中,函数或方法的参数是原始数据的拷贝,而不是原始数据本身。当你将一个值传递给函数时,函数内部…

消失的人!消除视频中不需要的人物

视频拍摄中拍摄了不相干或者是不需要出现的人物,想要从视频中去除,应该如何操作呢?有什么快捷方法可以轻松扣除视频中的人物? 我们在视频剪辑的时候都有这样的烦恼吧?就是在一段视频素材里有多余的人物出现&#xff0…

uniapp 使用和引入 thorui

1. npm install thorui-uni 2. "easycom": { "autoscan": true, "custom": { "tui-(.*)": "thorui-uni/lib/thorui/tui-$1/tui-$1.vue" } }, 3.

身份证照片怎么弄成200k以内?三个方法轻松搞定!

在日常生活中,为了方便上传和保存、便于传输和处理以及符合相关规定等方面的考虑,身份证照片大小常常被要求控制在200k以内,可是手机随便一拍,任凭如何截图都在超过1M,这个时候就需要借助一些图片压缩工具,…

前端项目--尚医通学习分享

这段时间跟着线上课程完成了一个项目:商医通(基于Vue3TypeScript的医院挂号平台)。具体我就不过多地介绍其具体功能以及详细的实现步骤了,感兴趣的小伙伴直接:传送门 。该文章我就分享一下在该项目中学习到的一些知识点…

OJ项目【登录】——验证码、失败登录多次账户冻结、用户密码加密,我是如何实现的?

目录 前言 1、验证码 1.1、引入pom 1.2、前端核心代码 1.3、后端核心代码 2、账户冻结 2.1、思路: 2.2、核心代码示例: 3、密码加密——加盐算法 3.1、思路: 3.2、代码实现示例: 4、小结:展示我的项目 4…

在 Elasticsearch 中实现自动完成功能 2:n-gram

在第一部分中,我们讨论了使用前缀查询,这是一种自动完成的查询时间方法。 在这篇文章中,我们将讨论 n-gram - 一种索引时间方法,它在基本标记化后生成额外的分词,以便我们稍后在查询时能够获得更快的前缀匹配。 但在此…

MySQL InnoDB引擎深入学习的一天(InnoDB架构 + 事务底层原理 + MVCC)

目录 逻辑存储引擎 架构 概述 内存架构 Buffer Pool Change Buffe Adaptive Hash Index Log Buffer 磁盘结构 System Tablespace File-Per-Table Tablespaces General Tablespaces Undo Tablespaces Temporary Tablespaces Doublewrite Buffer Files Redo Log 后台线程 事务原…

30天工作量,推荐4个ai写作生成器工具,一键搞定!

全新升级!畅销热门AI写作工具盘点40强,助你一键呈现顶尖文案! AI写作工具,引领时代潮流,让办公生活更高效!小编特意整理了市面上最好用的AI写作工具,共计40款!你使用过哪些&#xff…

【JAVA-Day45】Java常用类StringBuffer解析

Java常用类StringBuffer解析 Java常用类StringBuffer解析一、什么是StringBuffer类二、StringBuffer类的方法2.1 append方法2.2 insert方法2.3 delete方法2.4 replace方法2.5 reverse方法2.6 toString方法2.7 capacity方法2.8 length方法 三、StringBuffer类的应用场景深入了解…

选择适合自身业务的HTTP代理有哪些因素决定?

相信对很多爬虫工作者和数据采集的企业来说,如何选购适合自己业务的HTTP代理是一个特别特别困扰的选题,市面上那么多HTTP代理厂商,好像这家有这些缺点,转头又看到另外一家的缺点,要找一家心仪的仿佛大海捞针。今天我们…

【音视频|ALSA】SS528开发板编译Linux内核ALSA驱动、移植alsa-lib、采集与播放usb耳机声音

😁博客主页😁:🚀https://blog.csdn.net/wkd_007🚀 🤑博客内容🤑:🍭嵌入式开发、Linux、C语言、C、数据结构、音视频🍭 🤣本文内容🤣&a…

二、深度测试(Z Test)

1.是什么 ①从渲染管线出发 ②书面上理解 所谓深度测试,就是针对当前对象在屏幕上(更准确的说是frame buffer)对应的像素点,讲对象自身的深度值与当前该像素点缓存的深度值进行比较,如果通过了,本对象再改…

使用 Github Actions 工作流自动部署 Github Pages

GitHub-Actions actions顾名思义就是一堆动作,是一个持续集成服务,持续集成包含了拉代码、运行测试、编译代码、登录远程服务器,发布到第三方服务等等的操作,GitHub将这些操作称为actions。 概念:Workflows, Events,…

【Java学习之道】网络编程的基本概念

引言 这一章我们将一同进入网络编程的世界。在开始学习网络编程之前,我们需要先了解一些基本概念。那么,我们就从“什么是网络编程”这个问题开始吧。 一、网络编程的基本概念 1.1 什么是网络编程 网络编程,顾名思义,就是利用…

【算法-动态规划】完全背包问题

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kuan 的首页,持续学…

使用vue3+element-ui plus 快速构建后台管理模板

一、安装 vue3 脚手架 npm create vuelatestcd vue-ui-template #切换到刚刚创建好的vue项目根目录中 npm install #下载项目所需要的依赖包 npm run dev #启动运行项目服务项目启动后,默认页面显示如下: 二、安装element-ui plus 官网链接:…

Vue-3.0路由

生活中的路由:设备和ip的映射关系 路由就是一种映射关系 Vue中路由:路径和组件的映射关系,根据路由就能知道不同路径的,应该匹配渲染哪个组件 VueRouter的介绍 作用:修改地址栏路径时,切换显示匹配的组…