QPS的计算

QPS = req/sec = 请求数/秒

Q:如何根据日志查看一个服务的qps

A:

一般access.log是记录请求的日志,tail  -f XXX.access.log ,可发现格式如下:

前面是请求的时间,后面有接请求的方法名字,那么我们要统计getCart的qps

cat osp-cart.api.vip.com_access.log | grep getCart | awk '{print $2}' | awk -F '.' '{print $1}' | uniq -c

先grep getCart获取getCart服务

然后两次awk取出时分秒

然后uniq -c 去重统计

可以看到大致的QPS

【峰值QPS和机器计算公式】

原理:每天80%的访问集中在20%的时间里,这20%时间叫做峰值时间

公式:( 总PV数 * 80% ) / ( 每天秒数 * 20% ) = 峰值时间每秒请求数(QPS)

机器:峰值时间每秒QPS / 单台机器的QPS = 需要的机器

问:每天300w PV 的在单台机器上,这台机器需要多少QPS?

答:( 3000000 * 0.8 ) / (86400 * 0.2 ) = 139 (QPS)

问:如果一台机器的QPS是58,需要几台机器来支持?

答:139 / 58 = 3

源文档 <http://blog.chinaunix.net/uid-7530389-id-2050114.html>