谈在前面
相信互联网行业从事者,尤其是性能架构师是否经常遇到这样的场景:
1.当公司运营搞大型活动时,比如:在全国300多个景区同时投放10个景点门票下单二维码时
各部门技术老大跑过来一连串的疑问:
我们目前系统目前支持pv多少?uv多少?我们系统是否抗的住?如果扛不住需要加多少台机器?
2.当业务量快速增长时,我们的数据库数据量过亿时,技术老大又抛了几个问题:
我们数据库容量够么?是否需要分库?要分几个库?
从技术上来看以上问题都是设计容量的问题,设计容量及设计容量如何评估是每个性能架构师必备的技能之一,下面我们就来看看何为设计容量?
什么是设计容量
什么是设计容量,从性能层面说就是利用测试手段对系统容量进行精准预估的过程。我们在分析系统设计容量的过程中要尽可能的具体量化指标,比如:并发数、每秒事务数、资源利用情况、事务响应能力、系统存量用户、活跃用户、在线用户以及消息长度和带宽容量等。下面我们从并发角度介绍一下应用系统的设计容量评估过程,在介绍评估过程之前先带大家分析一下一些常用指标。
评估指标分析
TPS(Transactions Per Second):每秒事务数
QPS(Query Per Second):每秒请求数,QPS其实是衡量吞吐量的一个常用指标,就是说服务器在一秒的时间内处理了多少个请求。在接口层面,QPS和TPS的概念类似,很多时候可以不用严格意义上的区分。
并发数(并发度):并发数是指系统同时能处理的请求数量,能够反映系统的负载能力。可以通过统计单位时间内应用服务日志被访问次数得到
比如:一分钟内某服务日志被访问了6000次,那么此服务并发数=6000/60=1000
峰值QPS计算:可以分为二种计算方式,一种为精准计算,一种预估计算
1.精准计算一般根据业务形态特征来测算&