要查看服务器的并发情况,需要从多个维度进行监控和分析,包括当前活跃连接数、请求处理速率、资源利用率等,这些指标能够直接反映服务器的负载能力和性能瓶颈,以下是详细的查看方法和步骤:

使用系统命令查看基础并发
对于Linux服务器,可以通过内置命令快速获取并发连接信息。
-
netstat命令:
netstat an | grep ESTABLISHED | wc l可查看当前已建立的TCP连接数,即活跃并发连接数。netstat an | grep ":80" | wc l可查看特定端口(如80端口)的连接数,适用于监控Web服务并发。
加上u参数可统计UDP连接,t仅显示TCP连接。 -
ss命令(推荐,比netstat更高效):
ss t | grep ESTABLISHED | wc l统计TCP活跃连接;ss s可快速汇总连接状态(如ESTABLISHED、TIME_WAIT等数量),便于分析并发结构。 -
nstat命令(实时网络统计):
nstat z n | grep i "ActiveOpens|PassiveOpens"可查看TCP主动连接和被动连接数,反映并发请求发起频率。
使用专业监控工具分析并发
系统命令适合快速查看,但长期监控需借助专业工具,它们能提供更详细的历史数据和可视化图表。
-
top/htop命令:
通过top查看%Cpu(s)、%MEM等指标,结合Tasks中的running(运行中进程数)和total(总进程数),可初步判断CPU并发压力。htop以彩色界面展示,更直观。 -
iftop/nethogs(流量监控):
iftop i eth0实时显示网络带宽使用情况,按IP或端口排序流量,可定位高并发连接来源;nethogs按进程显示网络带宽占用,帮助发现异常高并发的进程(如恶意爬虫或业务激增)。
-
监控平台(Zabbix/Prometheus+Grafana):
- Zabbix:通过模板监控“Net.TCP.Connections”等指标,设置阈值告警(如并发连接数超过阈值时触发通知)。
- Prometheus:结合
node_exporter采集服务器指标(如node_netstat_TCP_Connections_established),用Grafana仪表盘展示并发趋势,并支持PromQL查询(如rate(node_netstat_TCP_Connections_established[5m])计算5分钟内并发连接增长率)。
中间件和Web服务器的并发监控
若服务器运行Nginx、Apache或Tomcat等中间件,需直接查看其内置的并发统计模块。
-
Nginx:
- 访问
http://localhost/nginx_status(需配置stub_status模块),显示“Active connections”(当前活跃连接)、“ accepts/handled/requests”(总请求数)等; - 日志分析:通过
awk '{print $1}' access.log | sort | uniq c | sort nr统计IP访问频率,识别高并发IP。
- 访问
-
Apache:
apachectl fullstatus或mod_status模块查看服务器状态,包括“Total Accesses”“Total kBytes”和“BusyServers”(忙碌进程数)。
-
Tomcat:
- 访问
http://localhost:8080/manager/status,查看“maxThreads”(最大线程数)、“currentThreadsBusy”(当前繁忙线程数),反映JVM并发处理能力。
- 访问
数据库并发监控
数据库是高并发场景的核心瓶颈,需单独监控其连接和查询情况。
-
MySQL:

SHOW PROCESSLIST;查看当前活跃线程数(并发连接),SHOW STATUS LIKE 'Threads_connected';获取当前连接总数;- 通过
Threads_running(非睡眠线程数)判断并发压力,正常值应低于100,过高需优化慢查询。
-
Redis:
INFO clients查看“connected_clients”(连接客户端数);INFO stats中的“instantaneous_ops_per_sec”实时每秒操作数,反映并发请求频率。
云服务器的并发监控
若使用阿里云、腾讯云等云服务器,可通过其控制台或API获取并发数据。
- 阿里云云监控:在“主机监控”中添加“网络连接数”指标,设置报警规则;
- 腾讯云云服务器CVM:通过“基础监控”查看“TCP连接数”,或使用Cloud Insight工具整合多维度并发数据。
并发异常分析与优化
当并发过高时,需结合资源使用情况定位问题:
- CPU瓶颈:
top中us(用户进程)或sy(系统)占用过高,需优化代码或增加实例; - 内存瓶颈:
free m查看剩余内存,若不足导致频繁 swapping,需扩容或优化内存泄漏; - 网络瓶颈:
iftop中带宽打满,需检查是否有DDoS攻击或大文件传输,可配置限流策略。
相关问答FAQs
Q1: 如何区分“并发连接数”和“QPS(每秒查询数)”
A: 并发连接数指某一时刻服务器处理的活跃连接总数,反映同时在线的用户或请求量;QPS指每秒处理的请求数,衡量服务器吞吐能力,一个并发连接可能在1秒内发送多个请求(QPS>并发数),也可能长时间保持连接无请求(QPS<并发数),可通过netstat an | wc l查并发,nginx_status的requests/s查QPS。
Q2: 服务器并发连接数突然飙升,如何快速排查?
A: 第一步通过ss s或netstat an查看连接状态分布(如TIME_WAIT过多可能是端口未释放);第二步用iftop或nethogs定位流量来源IP和进程;第三步检查中间件日志(如Nginx access.log)分析请求路径;第四步结合top查看CPU/内存是否异常,排除恶意请求(如爬虫或DDoS),必要时通过防火墙(如iptables)封禁异常IP。
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/298088.html