windows server 2016调优
1. 增加TCP连接的最大数量:
- 在您当前的注册表路径(
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
)中的右侧窗格,右击空白处,选择“新建” -> “DWORD (32位) 值”。 - 为新的值命名为
TcpNumConnections
。 - 双击新创建的
TcpNumConnections
,在“数值数据”框中设置您想要的最大连接数(例如,00fffffe
允许最多16777214个并发连接)。 - 点击“确定”。
2. 调整TCP的keep-alive设置:
- 在当前路径中的右侧窗格,右击空白处,选择“新建” -> “DWORD (32位) 值”。
- 分别为新的值命名为
KeepAliveTime
和KeepAliveInterval
。 - 双击
KeepAliveTime
,输入您想要的空闲时间数值。 - 同样,双击
KeepAliveInterval
,输入您想要的心跳频率数值。 - 点击“确定”。
完成上述设置后,建议重启服务器以应用更改。
官方描述:
再次提醒,更改这些设置之前,最好备份当前的注册表设置,并确保您了解这些更改的后果。如果您不确定,最好先在测试环境中进行更改,确保网络性能和连接稳定性不受影响。
好的,我可以提供一些建议的值供您参考。但是,请注意,这些是常见的建议值,具体数值应根据您的实际需要和测试结果进行调整:
1. 增加TCP连接的最大数量:
- TcpNumConnections: 设置为
00fffffe
可允许最多16777214个并发连接。这是理论上的最大值,但您可能不需要这么多。可以根据您的服务器规模和应用需要来决定。
2. 调整TCP的keep-alive设置:
这些设置主要影响TCP连接的持续性。默认情况下,Windows可能每2小时发送一次keep-alive心跳。如果您的应用需要更快速地检测到断开的连接或保持较短时间的连接,可以考虑调整这些值。
-
KeepAliveTime: 这是在连接变为空闲状态后,发送第一个keep-alive心跳之前等待的时间。建议值可以设置为
60000
(即1分钟)。这意味着当连接空闲1分钟后,系统将发送一个keep-alive心跳来检查连接是否仍然有效。 -
KeepAliveInterval: 如果接收到的keep-alive心跳没有响应,这是两次连续keep-alive心跳之间的时间间隔。建议值可以设置为
10000
(即10秒)。这意味着如果前一个keep-alive心跳没有得到响应,系统将在10秒后发送下一个心跳。
请记住,这些只是建议的起始值。在生产环境应用这些更改之前,您应该在测试环境中进行验证,确保它们不会对您的应用或服务器性能产生负面影响。如果在应用这些更改后遇到任何问题,您可以随时将这些值恢复到默认设置或进行相应的调整。
KeepAliveInterval
和 KeepAliveTime
都是与TCP的保持活跃机制(Keep-Alive)有关的参数。
-
KeepAliveTime:定义了一个TCP连接在空闲状态下持续多长时间后,才开始发送保持活跃的探测包。默认值是7200000毫秒,也就是2小时。这意味着如果在2小时内没有任何数据传输,系统就会发送一个保持活跃的探测包来检查连接是否仍然有效。
-
KeepAliveInterval:一旦开始发送保持活跃的探测包后,
KeepAliveInterval
定义了两次连续探测包之间的时间间隔。默认值是1000毫秒,也就是1秒。
这些值的设定取决于你的具体应用和网络环境。如果你的应用经常遭遇网络连接中断或你想要更快速地检测到网络故障,你可以考虑调整这些值。
例如,如果你希望更频繁地检查连接的健康状态,你可以减少 KeepAliveTime
的值。如果你希望在开始发送保持活跃探测包后,每次探测的间隔时间更长一些,你可以增加 KeepAliveInterval
的值。
建议的步骤如下:
- 根据你的应用和网络环境来确定一个合适的
KeepAliveTime
。例如,如果你觉得2小时太长,你可以设置为30分钟(1800000毫秒)。 - 为了避免频繁地发送探测包,你可以将
KeepAliveInterval
设置为比默认值更大的值,例如5秒(5000毫秒)。
但请注意,任何更改都可能会对网络性能产生影响,因此在进行任何调整之前,建议你先在一个测试环境中进行测试,观察效果后再决定是否应用到生产环境中。
例子:
想象您与一个朋友通过无线对讲机进行通信,但是因为各种原因(如干扰或距离太远),您不确定是否始终可以收到对方的信号。为了确保彼此的连接还在,您们约定了一个机制:如果在一个时间段内没有听到对方的声音,你们就会互相询问“你还在吗?”以确保连接仍然存在。
-
KeepAliveTime 就像这个时间段。例如,你们约定如果在2小时内没有任何交流,就开始询问“你还在吗?”。这就是默认的7200000毫秒(2小时)。
-
KeepAliveInterval 是询问的间隔。例如,开始询问“你还在吗?”后,如果5分钟内没有回应,你们就再次询问。这就像默认的1000毫秒(1秒)。
为了适应不同的情况,您可能需要更改这些时间。例如:
-
如果您认为2小时等待太长,想更快地检查连接,您可以将 KeepAliveTime 设置为30分钟。这意味着,如果在30分钟内没有交流,你就开始询问“你还在吗?”。
-
如果您认为每1秒询问一次太频繁,您可以将 KeepAliveInterval 设置为5分钟。这意味着,在开始询问“你还在吗?”后,如果在5分钟内没有回应,你就再次询问。
希望这个例子可以帮助您更好地理解这两个参数的作用。
相关文章:

windows server 2016调优
1. 增加TCP连接的最大数量: 在您当前的注册表路径(HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters)中的右侧窗格,右击空白处,选择“新建” -> “DWORD (32位) 值”。为新的值命名为TcpNu…...

Qt 插件开发详解
1.简介 Qt插件是一种扩展机制,用于将应用程序的功能模块化,并且可以在运行时动态加载和卸载。Qt框架为插件提供了一套标准的接口和管理机制,使得插件的使用和集成变得简单和灵活,通过插件机制,可以将应用程序的功能划…...

vue需求:实现签章/签字在页面上自由定位的功能(本质:元素在页面上的拖拽)
目录 第一章 效果展示 第二章 了解工具 2.1 draggable 2.1.1 了解draggable 2.1.2 draggable方法 2.1.3 利用例子理解方法 第三章 效果实现 3.1 实现思路 3.2 代码实现 3.2.1 涉及到的点 3.2.2 源代 第一章 效果展示 效果描述:通过点击左边栏的签名和…...

【深度学习基础】Pytorch框架CV开发(1)基础铺垫
📢:如果你也对机器人、人工智能感兴趣,看来我们志同道合✨ 📢:不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852】 📢:文章若有幸对你有帮助,可点赞 👍…...

uniapp原生插件之安卓热敏打印机打印插件
插件介绍 安卓热敏打印机打印插件,自动授权,打印机连接监听,打印文本,条形码,二维码,切纸,打印机状态,打印结果查询等 插件地址 安卓热敏打印机打印插件 - DCloud 插件市场 超级…...
巴菲特:卖比亚迪有助于资金配置
巴菲特表示,未来可能会有更多银行倒闭,但储户不必担心,他警告说,陷入困境的银行股不是价值投资,因为即使政府采取行动保护储户,股东的权益也会受到损失。他称,将加大对日本综合商社的投资&#…...
香港服务器有哪些特点
香港服务器具有以下特点: 速度快:香港服务器地理位置优越,与内地服务器相比,网络延迟更低,访问速度更快。 稳定性高:香港服务器位于全球重要的金融中心,网络环境稳定,服务器稳定性高…...

Leetcode76最小覆盖子串
思路:滑动窗口思想 1. 滑动窗口是什么:用一个滑动窗口为覆盖目标子串的字符串 2.怎么移动窗口:当不满足覆盖时右指针移动扩大范围,当覆盖了就移动左指针缩减范围直到再次不覆盖 3. 怎么判断是否覆盖:这里使用两个哈…...

GD32 单片机 硬件I2C死锁解决方法
死锁的复现方式 在I2C恢复函数下个断点(检测到I2C多次超时之后,应该能跳转到I2C恢复函数)使用镊子,将SCL与SDA短接,很快就能看到程序停到恢复函数的断点上,此时再执行恢复函数,看能否正常走出&…...

SPSS两相关样本检验
前言: 本专栏参考教材为《SPSS22.0从入门到精通》,由于软件版本原因,部分内容有所改变,为适应软件版本的变化,特此创作此专栏便于大家学习。本专栏使用软件为:SPSS25.0 本专栏所有的数据文件请点击此链接下…...

【vscode远程开发】使用内网穿透实现在公网环境下远程访问
文章目录 前言1、安装OpenSSH2、vscode配置ssh3. 局域网测试连接远程服务器4. 公网远程连接4.1 ubuntu安装cpolar内网穿透4.2 创建隧道映射4.3 测试公网远程连接 5. 配置固定TCP端口地址5.1 保留一个固定TCP端口地址5.2 配置固定TCP端口地址5.3 测试固定公网地址远程 前言 远程…...

KaiwuDB 内核解析 - SQL 查询的生命周期
一、概述 KaiwuDB 内核解析系列共分上下两部分,本文是该系列的第一部分,主要涵盖了网络协议到 SQL 执行器,解释 KaiwuDB 如何执行 SQL 查询,包括系统各个组件的执行路径(网络协议、SQL 会话管理、解析器、执行计划及优…...

2023.11.03 homework
小学4年级数学 1 2 3 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 19…...

ssm在线互助答疑系统-计算机毕设 附源码 20862
ssm在线互助答疑系统 摘 要 科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流,人类发展的历史正进入一个新时代。在现实运用中&#…...

MySQL中如何书写update避免锁表
1. 什么是MySQL锁表? MySQL锁表是指在对某个数据表进行读写操作时,为了保证数据的一致性和完整性,系统会对该数据表进行锁定,防止其他用户对该表进行操作。 2. 为什么会出现锁表? 当多个用户同时对同一个数据表进行…...

Mysql库操作
一:库的操作 1:创建数据库 mysql> create database test1; Query OK, 1 row affected (0.00 sec)mysql> create database test2 charsetutf8;create database test2 character utf8;Query OK, 1 row affected (0.00 sec)mysql> create databa…...

C#中LINQtoSQL只能在.NetFramework下使用,不能在.net 下使用
目录 一、在net7.0下无法实现LINQtoSQL 1.VS上建立数据库连接 2.VS上创建LINQtoSQL 二、在.NetFramework4.8下成功实现LINQtoSQL 1.VS上建立数据库连接 2.VS上创建LINQtoSQL 三、结论 四、理由 本文是个人观点,因为我百般努力在.net7.0下无法实现LINQtoSQL的…...

Nacos 的底层实现原理 注册中心的两种调用方式
目录 1. Nacos 的底层实现原理 1.1 配置中心自动刷新实现原理 1.2 注册中心底层实现原理 2. Nacos 注册中心的两种调用方式 2.1 RestTemplate Spring Cloud LoadBalancer 的调用方式 2.2 使用 OpenFeign Spring Cloud LoadBalancer 1. Nacos 的底层实现原理 1.1 配置中心…...
视频编码格式和文件格式(多媒体容器格式)的关系
视频编码格式和文件格式是两个不同的概念。 视频编码格式指的是将视频信号转换为数字信号时所采用的压缩算法标准。它决定了如何将原始视频数据压缩为较小的文件大小,以及如何解码回原始视频数据。目前常见的视频编码格式有 H.264、H.265、VP9 等。 文件格式则是指…...

RHCSA --- 第二天
一、查看IP地址 [rootlocalhost ~] ip ad 对应四张网卡 第一张:环回网卡(用于测试) 第二张(主要):以太网网卡(ens160) 2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP>…...

XML Group端口详解
在XML数据映射过程中,经常需要对数据进行分组聚合操作。例如,当处理包含多个物料明细的XML文件时,可能需要将相同物料号的明细归为一组,或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码,增加了开…...

Xshell远程连接Kali(默认 | 私钥)Note版
前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...
逻辑回归:给不确定性划界的分类大师
想象你是一名医生。面对患者的检查报告(肿瘤大小、血液指标),你需要做出一个**决定性判断**:恶性还是良性?这种“非黑即白”的抉择,正是**逻辑回归(Logistic Regression)** 的战场&a…...

微信小程序云开发平台MySQL的连接方式
注:微信小程序云开发平台指的是腾讯云开发 先给结论:微信小程序云开发平台的MySQL,无法通过获取数据库连接信息的方式进行连接,连接只能通过云开发的SDK连接,具体要参考官方文档: 为什么? 因为…...

用docker来安装部署freeswitch记录
今天刚才测试一个callcenter的项目,所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...
Android Bitmap治理全解析:从加载优化到泄漏防控的全生命周期管理
引言 Bitmap(位图)是Android应用内存占用的“头号杀手”。一张1080P(1920x1080)的图片以ARGB_8888格式加载时,内存占用高达8MB(192010804字节)。据统计,超过60%的应用OOM崩溃与Bitm…...

算法:模拟
1.替换所有的问号 1576. 替换所有的问号 - 力扣(LeetCode) 遍历字符串:通过外层循环逐一检查每个字符。遇到 ? 时处理: 内层循环遍历小写字母(a 到 z)。对每个字母检查是否满足: 与…...
API网关Kong的鉴权与限流:高并发场景下的核心实践
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 引言 在微服务架构中,API网关承担着流量调度、安全防护和协议转换的核心职责。作为云原生时代的代表性网关,Kong凭借其插件化架构…...

FFmpeg avformat_open_input函数分析
函数内部的总体流程如下: avformat_open_input 精简后的代码如下: int avformat_open_input(AVFormatContext **ps, const char *filename,ff_const59 AVInputFormat *fmt, AVDictionary **options) {AVFormatContext *s *ps;int i, ret 0;AVDictio…...

在 Visual Studio Code 中使用驭码 CodeRider 提升开发效率:以冒泡排序为例
目录 前言1 插件安装与配置1.1 安装驭码 CodeRider1.2 初始配置建议 2 示例代码:冒泡排序3 驭码 CodeRider 功能详解3.1 功能概览3.2 代码解释功能3.3 自动注释生成3.4 逻辑修改功能3.5 单元测试自动生成3.6 代码优化建议 4 驭码的实际应用建议5 常见问题与解决建议…...