一、受影响因素
-
request对CPU的消耗
-
外部接口、IO等
-
结论:单个reqeust 对CPU消耗越高,外部系统接口、IO影响速度越慢,系统吞吐能力越低,反之越高。
二、重要参数
-
QPS(TPS)
- 定义:每秒钟request/事务 数量,,,,tps每秒处理事务数量,qps每秒处理请求数量
- TPS:服务器每秒处理的事务数
- QPS:每秒的响应请求数,也即是最大吞吐能力
-
并发数
- 定义:系统同时处理的request/事务数
-
响应时间
-
定义:一般取平均响应时间
-
-
关系:QPS(TPS)= 并发数/平均响应时间 或者 并发数 = QPS*平均响应时间
三、系统吞吐量评估
-
从评估出来的出来QPS、并发数之外,还有另外一个维度:日PV。
-
技术方法
-
找出系统的最高TPS和日PV,这两个要素有相对比较稳定的关系(除了放假、季节性因素影响之外)
-
通过压力测试或者经验预估,得出最高TPS,然后跟进1的关系,计算出系统最高的日吞吐量
-
四、实例
-
学习地址:https://www.jianshu.com/p/2fff42a9dfcf
-
发言:
-
从服务端整体资源数量看,总共服务器数195个,最大320个
-
ecs-l-frontend-web-elb 前端服务器 最小值45 最大值100
-
ecs-l-frontend-web-elb-activity 活动服务器 最小10 最大20
-
ecs-l-frontend-web-elb-pay 金融服务器 最小10 最大20
-
ecs-l-frontend-web-elb-list 列表服务器 最小10 最大30
-
ecs-l-frontend-web-elb-gift 送礼服务器 最小15 最大40
-
ecs-l-frontend-web-elb-login 登录注册服务器 最小5 最大10
-
ecs-l-frontend-web-elb-slive 开播心跳服务器 最小15 最大40
-
-
从CPU使用率,目前保持再30%
-
从首页QPS看,目前7200, 压测最大QPS能支撑1w6
-
综上结论,流量翻一倍,都能支撑,不需要提前扩容,活动当天会安排开发人员24小时值守,前端机器已配置好自动扩容机制。
-
-
发言:那你得两个维度压,连接数和qps,不过tps理论上会影响秒开的。