诺亚方舟

沉淀

计算TCP、nginx、mysql连接数

一、计算TCP连接数

1
2
3
4
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
 
或者:
 netstat -n | awk '/^tcp/ {++state[$NF]} END {for(key in state) print key,"t",state[key]}'

注意,计算出来的ESTABLISHED便是系统当前的tcp并发连接数。

二、计算nginx worker进程数

1
ps aux | grep nginx | grep -vE 'grep|master' | wc -l

 三、计算mysql当前连接数和执行命令

1
2
mysqladmin -umysql -pmysql status -i 3//3秒钟刷新一次
mysqladmin -umysql -pmysql processlist

status命令各字段介绍:

Uptime: 42531138  Threads: 11  Questions: 21157248342  Slow queries: 121697  Opens: 3648618  Flush tables: 3  Open tables: 1024  Queries per second avg: 497.

Uptime:是mysql启动运行的时间;
Threads:当前的并发会话数;
Questions: 服务器启动以来客户的问题(查询)数目 (应该是只要跟mysql作交互:不管你查询表,还是查询服务器状态都问记一次);
Slow queries:慢查询次数;
Opens:服务器已经打开的数据库表的数量;
Flush tables: 服务器已经执行的flush …、refresh和reload命令的数量;
open tables:通过命令是用的数据库的表的数量,以服务器启动开始;
Queries per second avg:平均qps

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>