如何知道Apache的连接数目

ps -ef|grep httpd|wc -l  这个才是看apache子进程的,也就是当前并发连接数是多少。
如果在LINUX 或者SOLARIS上装好了Apache, 我应该用什么命令能知道在某一时间, 或者某一时间段,连接到WEB服务器上的用户数目?
[前提是不用其他第三方的记录分析软件.]

记录分析软件,很显然他是要你分析apache的日志了,呵呵,注意审题
没用标准答案..

可选答案倒是不少.

ps -ef|grep httpd|wc -l   

统计httpd进程数,连个请求会启动一个进程..

netstat -nat|grep -i "80"|wc -l
    452

netstat -an
会打印系统当前网络链接状态..grep -i ":80"是用来提取与80端口有关的连接的, wc -l进行连接数统计..


netstat -na|grep ESTABLISHED|wc -l
    190
grep ESTABLISHED 提取出已建立连接的信息. 然后统计.




1.
netstat -anp|grep ":80" |grep ESTABLISHED|grep -v grep|wc -l

统计已经与80端口完整连接的数.
2.通过分析apache的访问日志.来得到结果
access_log.txt
可以用perp,sed,awk,grep写一个分析脚本.

3.通过apache的status来查看.
没有看明白
那你先把
netstat, awk,grep……等的几个常用的命令看懂吧。
那是基础,方法虽很多原理也就是那样哈。
就是让你写个脚本来分析APACHE的日志。综合考验你的系统管理能力和对脚本的使用能力。。我想应该是这样吧。。
ls /proc/httpd's id/fd/


QUOTE:
原帖由 babywang 于 2004-1-30 11:39 发表
以上的办法都可取,但是最方便的办法也最直观的办法是用ps -ef|grep httpd|wc -l的形式输出一个数字结果,这个数字结果其实是你的进程数量,但是也一定程度体现你的连接情况,然后用MRTG采集这个数字,生成图表 ...

..我也是这样认为。。也分析过前面他们说过的几种方法。。都不如直接分析服务器进程更精确
学习了。不过还是对一些东西不甚明了
那么多人都知道使用ps -ef|grep httpd|wc -l来统计正在处理的进程数,在某种情况下也可以看作是并发请求数。但是,却都没有谈到apache的2种工作模式,prefork和work模式。难道ps -ef|grep httpd|wc -l能适应于这两种模式?就我所知只能使用与前者吧,如果是work模式,还能用这种方法?如果访问量不大,一般work模式下这个命令统计出来的值往往也10左右,难道并发请求数只有这么多吗?非也,work模式使用的线程模式,故这样统计出来是不正确的。