关于连接数的疑问


一、对这个连接数有些疑惑,下面这两个统计有什么区别吗? 连接数我可以理解为并发请求数吗
1统计80端口连接数
netstat -nat|grep -i "80"|wc -l

2)统计httpd协议连接数
ps -ef|grep httpd|wc -l

二、你们统计nginx 的时候是怎么统计的,也是这样吗?
1统计80端口连接数
netstat -nat|grep -i "80"|wc -l

2)统计nginx协议连接数
ps -ef|grep nginx|wc -l

三、mysql的连接数我可以理解并发连接数据库的数吗?这个你们怎么统计的,下面这两种是那一种,还有这两种有区别吗?( 还有像memcache和redis,mongodb等,可以统计他的进程来确定他的连接数吗?
第一种
show processlist
第二种
ps -ef|grep mysqld|wc -l

先谢谢各位大神了!!

apache Redis php mysql nginx

_HYIII_ 9 years, 7 months ago

连接数和并发数不是一回事吧,并发是同时执行的请求数,保持连接不见得就发送请求了,两者不是一个概念

异世界执行姬 answered 9 years, 7 months ago

如果 Apache 的 多处理模块(MPM) 使用的是 prefork 模式,那么: ps -ef|grep httpd|wc -l 就是并发数了。也有例外,因为在 htttp-mpm.conf 中如果把空闲状态下 httpd 进程数配置的比较高,比如你配置是 100,其实你网站这个时候即使只有 5 个并发,但是 httpd 进程数也还是 100 个。

YUI·爱 answered 9 years, 7 months ago

一、前者是使用 80 端口的连接数,一般情况下就是并发数;后者是 httpd 的进程数,httpd 可以为每个请求创建一个线程或一个进程,而且也会有空闲的进程,所以后者和并发数没什么关系。

二、同上。

三、show processlist 是 MySQL 提供的查看进程数的命令;后者和前面一样。

death逆刃 answered 9 years, 7 months ago

Your Answer