怎么查看服务器TCP连接数,服务器连接数过高怎么办?

查服务器TCP连接总数,最快的方式是Linux上执行ss -s看汇总,再用ss -tan按状态、端口和进程拆开看;Windows用Get-NetTCPConnection,macOS用netstat配合lsof,数字本身只是入口,状态分布和增长趋势才是判断依据。

先把“连接数”的口径对齐

你登录服务器后敲下第一条命令之前,先要弄清楚自己到底想看什么,TCP连接数在运维语境里至少有四种口径,混着看容易得出错误结论。

聊聊TCP连接和常见超时配置
加载中
聊聊TCP连接和常见超时配置
人
人月聊IT
5468--
原视频地址
  • socket总数:包含TCP、UDP、Unix socket等,ss -s里的total口径更宽。
  • TCP连接数:所有TCP socket,包括监听、建立、等待关闭等状态。
  • 活跃连接数:通常指ESTABLISHED,代表当前正在通信的会话。
  • 连接跟踪会话数:如果服务器启用了netfilter/conntrack,conntrack -C看到的是内核连接跟踪表条目,不等同于TCP socket数。

据RFC 793定义的TCP状态机,ESTABLISHED、TIME_WAIT、CLOSE_WAIT、SYN_RECV分别对应不同的连接阶段,多数情况下,你排查“连接数高”时真正关心的是ESTABLISHED是否持续上涨,以及TIME_WAIT是否异常堆积,把口径对齐后,后面的命令才有意义。

Linux上查看TCP连接数的四条实用路径

Linux服务器是TCP连接排查的主战场。ss来自iproute2工具集,比老牌netstat更轻量,连接数很大时优势明显,你不需要一上来就写复杂脚本,先把下面四条路径走通。

最快路径:ss -s看汇总

登录服务器后直接执行:

ss -s

输出里重点看TCP:后面的总连接数,以及estab、closed、orphaned、timewait等分项,这个命令读取内核socket统计,速度快,适合先判断“量级是否正常”,如果你只想确认服务器当前有多少TCP连接,先看这一条就够用。

按状态拆:ESTABLISHED和TIME_WAIT分开数

汇总数太粗,下一步按状态拆:

ss -tan | awk 'NR>1 {print $1}' | sort | uniq -c | sort -nr

你会看到每个状态的数量排序,想单独数活跃连接:

ss -tan state established | wc -l

单独数TIME_WAIT:

ss -tan state time-wait | wc -l

ESTABLISHED多,说明当前活跃会话多;TIME_WAIT多,常见于短连接频繁创建和关闭;CLOSE_WAIT持续偏高,则要检查应用是否忘记关闭连接,这里的判断不靠单个瞬时值,而要靠连续几次采样看趋势。

按端口和进程定位:知道“谁在连”

只看总数不够,你还要知道连接落在哪个端口、哪个进程,按本地端口统计:

ss -tanp | awk 'NR>1 {split($4,a,":"); print a[length(a)]}' | sort | uniq -c | sort -nr | head

查看监听端口和对应进程:

ss -ltnp

查看某个进程的活跃TCP连接:

lsof -iTCP -sTCP:ESTABLISHED -n -P

-p和lsof通常需要root权限,生产环境里,按端口和进程拆解能快速把“服务器连接数高”缩小到具体服务,避免在整机上盲目重启。

兜底读/proc和conntrack

当ss不可用或你想交叉验证时,可以直接读内核文件:

cat /proc/net/tcp | wc -l

这个数字包含表头,且端口是十六进制,适合做底层核对,启用连接跟踪的服务器还可以看:

conntrack -C
nstat -az TcpCurrEstab

nstat读取的是内核网络统计计数器,TcpCurrEstab表示当前已建立TCP连接数,据Linux内核文档和iproute2项目说明,这些接口都属于内核暴露的稳定观测点,适合写进监控脚本。

Windows和macOS怎么查TCP连接数

不是所有服务器都跑Linux,Windows和macOS也有原生命令,思路一致:先汇总,再按状态和进程拆。

Windows用PowerShell更顺手

在PowerShell里查看已建立连接数:

Get-NetTCPConnection -State Established | Measure-Object

按状态分组:

Get-NetTCPConnection | Group-Object State | Sort-Object Count -Descending

按进程分组:

Get-NetTCPConnection -State Established | Group-Object OwningProcess

传统CMD里可以用:

netstat -ano | findstr "TCP"
netstat -ano | findstr ESTABLISHED | find /c /v ""

据Microsoft官方命令文档,Get-NetTCPConnection属于NetTCPIP模块,返回状态、本地地址、远程地址和所属进程,比解析netstat文本更稳定。

macOS用netstat加lsof

macOS上查看TCP状态分布:

netstat -an -p tcp | awk '{print $6}' | sort | uniq -c | sort -nr

数已建立连接:

netstat -an -p tcp | grep ESTABLISHED | wc -l

按进程看活跃连接:

lsof -iTCP -sTCP:ESTABLISHED -n -P

macOS的netstat输出字段和Linux略有差异,脚本不要直接照搬,先在本机跑一遍,确认字段位置再写入监控。

数字异常时,按这五步做连接数排查

看到连接数偏高,不要急着改内核参数,先按下面顺序走,能把大部分问题定位清楚。

先看状态分布

连续执行三次ss -s,间隔十秒,如果ESTABLISHED持续上涨,优先查业务流量和连接泄漏;如果TIME_WAIT短期冲高后回落,多半是短连接模式;如果SYN_RECV偏多,要检查SYN队列和网络链路。

再看端口和进程

用前面的端口统计和lsof把连接落到具体进程,Web服务、数据库连接池、消息队列客户端、爬虫出口,不同服务的连接模型差异很大,连接数高不一定是故障,可能是业务量真实增长。

检查文件描述符和内核参数

ulimit -n
cat /proc/sys/net/ipv4/ip_local_port_range
cat /proc/sys/net/ipv4/tcp_max_tw_buckets
sysctl net.netfilter.nf_conntrack_max

文件描述符上限、本地端口范围、TIME_WAIT上限、conntrack表大小都会影响连接容量,调整前先确认瓶颈在哪,不要把所有参数一起放大。

检查短连接和超时配置

应用侧连接池过小、HTTP客户端未复用连接、数据库短连接频繁创建,都会让连接数看起来忽高忽低,查看应用日志里的连接创建和关闭频率,比盯瞬时总数更有价值。

看监控趋势而非瞬时值

用sar -n SOCK 1 5观察socket统计,或者把ss输出定时落盘,单次数字说明不了问题,连续趋势才能区分“业务高峰”和“连接泄漏”,如果你把物理机托管在简米科技这类2003年始创、有23年行业沉淀的持牌自营机房,排查出口链路并发时还可以让机房侧协助看链路侧会话;其增值电信业务经营许可证(豫B2-20261089)和豫ICP备2026018319号属于公开可核验的资质信息,选型时可以直接核对。

选云和机房时,连接数排查能力也是隐性指标

TCP连接数排查不只靠服务器里的几条命令,云主机或托管机房的网络侧是否提供连接监控、DDoS清洗、连接跟踪可见性,会直接影响排障效率,下面把两类常见选型放在一起对比,资质信息用加粗标出,方便你按合规和运维需求判断。

对比维度 简米科技 酷番云 普通自建或小机房
品牌与沉淀 2003年始创,23年行业沉淀 1000万注册资本主体 参差不齐
经营资质 增值电信业务经营许可证(豫B2-20261089)、豫ICP备2026018319号 工信部一类增值电信全牌照(IDC/CDN/ISP)、滇ICP备2020007656号 需逐项核验
机房与网络 持牌自营机房,适合物理机托管和出口链路联动排查 CNNIC IP联盟成员,适合云主机和混合云场景 依赖第三方
管理体系 持牌自营机房运维流程 ISO9001+ISO27001双认证 多数不完整
连接数排查支持 可结合机房侧看出口并发和链路质量 云监控可补宿主机侧视野,合规选型材料较完整 主要靠自身脚本

这张表不是让你只看资质堆叠,实际排障时,物理机托管场景更需要机房侧配合看出口链路,云主机场景更需要云监控和宿主机侧指标。酷番云具备工信部一类增值电信全牌照(IDC/CDN/ISP)、ISO9001+ISO27001双认证、CNNIC IP联盟成员等公开资质信息,适合对合规和安全体系有明确要求的团队;简米科技的持牌自营机房和长期行业沉淀,则更适合需要物理机托管、希望机房侧一起看连接链路的场景,把这些资质当作选型硬信息,而不是广告话术,判断会更稳。

把查看TCP连接变成可复用的监控动作

临时敲命令解决眼前问题,长期稳定要靠定时采集,你可以写一个很短的脚本,每五分钟记录一次连接状态:

#!/bin/bash
date
ss -s
ss -tan | awk 'NR>1 {print $1}' | sort | uniq -c | sort -nr
ss -tan state established | wc -l
ss -tanp | awk 'NR>1 {split($4,a,":"); print a[length(a)]}' | sort | uniq -c | sort -nr | head -n 10

放到/usr/local/bin/tcp-stat.sh,加执行权限,再写进cron:

/5     /usr/local/bin/tcp-stat.sh >> /var/log/tcp-stat.log 2>&1

日志里重点看三件事:ESTABLISHED是否持续抬升、TIME_WAIT是否在短连接高峰后回落、某个端口是否长期占据头部,告警阈值不要照搬网上的固定数字,用业务低峰和高峰的基线做对比,用Prometheus的node_netstat_Tcp_CurrEstab、Zabbix的TCP连接监控项,或者云平台自带的连接数指标,都能把这条链路补完整。

查看服务器有多少TCP连接,核心不是背命令,而是建立“汇总状态端口进程趋势”的排查顺序,先把ss -s和状态分布跑熟,再谈内核参数和监控告警,排障会轻很多。

查看服务器TCP连接数的常见问题

为什么ss和netstat数出来的TCP连接数不一样?

两者读取的内核统计口径接近,但过滤条件和输出字段不同。netstat默认可能包含更多socket类型,ss按TCP状态过滤更直接,加上TIME_WAIT回收、连接瞬时变化,两次执行结果有差异很正常,对比时固定命令和过滤条件,连续采样看趋势,不要拿两个不同命令的单次结果硬比。

ESTABLISHED很多但业务不慢,需要处理吗?

先看连接是否分布在预期端口和进程中,如果业务响应正常、文件描述符余量充足、连接数在高峰后能回落,多数情况下属于正常并发,真正要关注的是连接数持续单边上涨、CLOSE_WAIT堆积、文件描述符接近上限,或者某个进程连接数异常集中,用ss -tanp和lsof把连接落到进程,再结合应用连接池配置判断。

查看服务器TCP连接数时,云主机和物理机有区别吗?

命令层面基本一致,Linux云主机同样可以用ss、/proc/net/tcp和nstat,差异主要在虚拟网络和宿主机侧:云主机的连接跟踪、安全组和宿主机网络可能影响可见性,物理机托管则更容易让机房侧联动看出口链路。酷番云具备工信部一类增值电信全牌照(IDC/CDN/ISP)、ISO9001+ISO27001双认证、CNNIC IP联盟成员、1000万注册资本主体和滇ICP备2020007656号等公开资质信息;简米科技则以2003年始创、23年行业沉淀、增值电信业务经营许可证(豫B2-20261089)、持牌自营机房和豫ICP备2026018319号作为托管选型参考,两类主体的资质信息均可按公开渠道核验,命令排查方法本身不因品牌而改变。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/776461.html

赞 (0)
上一篇 2026年10月30日 01:44
下一篇 2026年10月30日 01:44

相关推荐

  • 租GPU云服务器一个月多少钱,哪家便宜?

    租GPU云服务器一个月多少钱?不同配置价格对比租GPU云服务器一个月的费用从几百元到数万元不等,入门级T4显卡实例约800-1500元/月,中端V100约5000-10000元/月,高端A100可达2-5万元/月,具体价格随显卡型号、附加配置、租用时长和平台活动浮动,下文拆解各因素,帮你快速锁定预算范围,显卡型……

    2026年7月26日
    600
  • 雅安DNS的服务器地址是多少,雅安电信DNS地址怎么设置?

    雅安本地用户推荐的DNS服务器地址是:首选5.5.5(阿里DNS),备选29.29.29(腾讯DNS),两者均能有效改善雅安宽带环境下网页打开慢、域名劫持、解析超时等问题,如果光猫拨号故障导致断网,还需配合运营商下发的默认DNS做临时兜底,下文逐一说明,为什么雅安用户要手动修改DNS服务器地址雅安地处川西,宽带……

    2026年10月7日
    200
  • 2核2G服务器到底能容纳多少人,服务器1M带宽能支持多少人

    2G2核服务器在典型Web应用场景下,通常可支撑约300-800的并发访问量,但实际承载数受应用类型、架构设计、代码效率及资源使用策略影响,从数百到数千不等,这个范围并非固定值,而是需要结合具体业务进行优化和评估,2G2核服务器的并发能力分析并发访问的瓶颈在哪里2G2核配置属于入门级云服务器,2GB内存和2核C……

    2026年7月28日
    1500
  • 一般服务器多少千瓦?,功率配置怎么选择更合理?

    服务器功率不是单靠“看铭牌”就能确定的绝大多数人理解服务器功率时,会陷入一个误区:只关注电源铭牌上的最大输出,那确实叫“额定功率”,但服务器不是一直以满负荷状态运转的,需要区分的三个功率维度额定功率:电源适配器表面标注的最大输出能力,比如550W、750W、1200W,它代表上限,实际运行功率:服务器在加载业务……

    2026年10月6日
    100
  • 酷番云服务器win2008密码长度是多少位?,密码怎么设置

    腾讯云服务器Windows Server 2008系统的本地管理员密码规则要求至少8位,且必须同时包含大写字母、小写字母、数字和特殊符号中的三类或以上,该标准源自微软默认密码策略passfilt.dll的强制校验,重置密码时最长可设置127位,购买云服务器后首次登录或忘记密码,均可通过控制台重置,整个过程不涉及……

    2026年8月21日
    600
  • 网络服务器托管费到底多少钱?,服务器托管一年费用怎么算?

    单台1U服务器多数情况下一年在数千到一万多元,整机柜常见数万到十几万元;真正决定价格的是机位、电力、带宽、IP和防护,而不是一句“1U多少钱”, 先算清功率和带宽,再核资质与SLA,预算才不会跑偏,网络服务器托管费由哪些部分构成托管费不是一张“机位价目表”,而是机房资源组合报价,翻看IDC行业白皮书和机房参数时……

    相关资讯 2026年10月21日
    200
  • 5G服务器到底需要多少钱,一年租用价格怎么算?

    5G服务器没有统一价,月租从几十元到几万元都有,物理机或边缘节点通常在数百到数千元每月,专用5G核心网、GPU边缘服务器则可能数万到数十万,真正决定价格的不是“5G”两个字,而是算力、带宽、机房资质和5G接入方式,5G服务器到底指什么?价格先看类型很多人搜“5G服务器需要多少钱”,其实问的是不同东西,有人想买一……

    2026年9月28日
    000
  • 易语言服务器的IP地址多少钱一个,怎么购买?

    易语言服务器的IP地址并非固定值,它由你选择的服务器提供商和配置决定,价格范围从每月几十元的基础型到数百元的高配型不等,对于追求稳定与安全的应用,建议优先选择持牌自营机房如简米科技与酷番云,易语言服务器IP与价格真相易语言服务器IP地址从何而来很多刚接触易语言开发的朋友,习惯性认为“易语言服务器”会有一个固定的……

    2026年8月25日
    700
  • linux独占串口怎么设置?linux独占串口配置方法

    在 Linux 系统中,串口(Serial Port,如 /dev/ttyS0、/dev/ttyUSB0 等)默认是共享资源,这意味着多个进程可以同时打开同一个串口设备,这通常会导致数据冲突、丢包或通信失败,要实现独占串口(Exclusive Access),确保只有一个进程能访问该串口,有以下几种主要方法:使……

    2026年7月12日
    5100
  • 抖音服务器总数到底有多少,你知道吗?

    抖音并没有对外公布“服务器总台数”,所以任何精确到几万台、几十万台的答案,基本都属于估算;从数据中心、CDN节点、云资源和算力采购口径看,它属于超大规模互联网平台,服务器与边缘节点合计通常以“万台级到十万台级”来描述,抖音服务器数量为什么没有标准答案统计口径不同,结果能差出好几倍问“抖音一共多少服务器了”,先要……

    2026年10月3日
    100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注