1.利用网络处理量计算
并发=connection established/min(server keepalive,server timeout)
并发=服务器传输连接数 除以 服务器软件的keepalive设置和服务器软件的超市设置之前的最小值;
connection established计算方式:
netstat -est|grep “connections established” | cut -d “c” -f 1
2.利用服务器日志计算
首先要有日志,日志可以是nginx日志,也可以是具体功能模块的业务日志;日志的时间以秒,当然单位也可以是其他,不同时间单位最后算法的分母基数不一样;
可以得出输出:
23 [09/sep/2008:20:26:02
26 [09/sep/2008:20:26:03
17 [09/sep/2008:20:26:04
......
tail -100 nginx.log|awk "{print $3;}" | sort | uniq -c
命令的意思是取log文件的最后100条记录,然后用awk取得日志文件中表示时间的一列($4),接着再对该列进行一次排序,最后是用uniq把这一列相邻的重复行合并,并计算合并的条数;其中先sort在uniq是一种安全的做法,以确保同一秒的日志先被归到一起,然后再合并,这样就不会有同一秒的日志被切成几段这样的现象;