指标设定和数据量级
概述
最终要的性能指标需要关注的是tps、响应时间。有时候根据线上pv、uv量估算出预期性能指标。
指标参考
压力机:4核8g
应用服务器:4U/16C 32G
单节点
序号 | TPS=并发量/时间s | pv量 | 规律 |
1 | 20 = 6/0.3 | 没啥人用的服务 |
TPS固定情况下, 并发加几个百分 比响应时间就会 加几个百分比
|
2 | 20 = 4/0.2 | 后台服务 | |
3 | 50 = 10/0.2 | 十万到百万级服务 | |
4 | 100 = 10/0.1 200 = 20/0.1 | 秒杀短时间高并发 |
加redis缓存后估算
序号 | TPS=并发量/时间s | 备注 |
1 | 10万 = 50/0.0005 | 和未加redis的 秒杀短时间高并发时间 相差大概1秒 |
拿我们公司业务举例日活880w、QPS峰值是236,压测的预期性能指标是现有峰值的4倍再稍微加一点探个底大概是236*4*1.5=1416。线上服务器是38台预期QPT(1416)除去机器间的冗余量(1416/0.5),除去机器台数单台机器QPS大概是70(1416/0.5/38)
详解
一、指标设定
- 新项目找产品设定一个值
- 已上线项目根据运营数据,产品人员预估一个值
- 运维人员落实pv量
二、tps计算
- 如果没有指标根据我开始指标参考选一个
- 根据二八原则通过pv量得出tps、根据二五八原则粗略得出响应时间不大于0.2s。(二八原则参考图2)
- 实际结果: tps<二八原则得出的tps、响应时间小<200ms 即可(参考图1)
- 最终的实际tps再除以机器冗余量(冗余量大概在30%-50%)(参考图2)
三、指标影响与提升
缩短响应时间
- 加缓存
- 优化代码
- 优化数据库
增加tps
- 加机器
四、示例
1、示例1
(图1)
2、示例2
平均并发量:C=nL/T C平均并发量、n访问用户量、L用户平均登录时长、T允许用户登录时长;
最大并发量:C^=C+3×(C的平方根) C^最大并发用户
1)根据以上公式uv量(n)、登录时长L、允许登录时长T,
2)此外,如果知道平均每个用户发出的请求数u,则系统吞吐量可以估算为p×C。从而根据二八原则计算出tps。
参考链接:
https://www.jianshu.com/p/Ch5xpk
https://www.zhihu.com/question/21556347
https://www.cnblogs.com/accumulating/p/11440739.html
转载引用请标明出处,本博出自喝了少不如不喝的博客https://home.cnblogs.com/u/wangdadada