性能测试基础概念

性能测试的目的?

     评估+预测+调优。

     评估当前系统的性能,预测系统以后的瓶颈,找到瓶颈点,并进行调优优化。

性能测试的指标:

    系统指标&资源指标。

    系统指标:

             并发用户数:同一时刻向系统提交请求的用户数。

             tps(Transaction per second):系统每秒处理的事务数

             响应时间:系统处理事务的响应时间的平均值

             成功率:成功事务的比例

   资源指标:

            cpu:主要看cpu使用率和上下文切换频率。

            内存:系统内存看swap的si与so

                    jvm内存看gc的速度

            磁盘IO:看磁盘使用率(util),请求队列的长度(avgqu-sz),服务时间(svctm)和等待时间(await )

            网络IO:主要看网络延时。

   几个概念的区分:

      tps与qps:

           QPS:Queries Per Second意思是“每秒查询率”,是一台服务器每秒能够相应的查询次数。

           所以对于压测一般的系统,指标为tps,若是数据库类似的系统,一个事务里面可能存在多条执行语句,这个时候观察qps更为合适。

      吞吐量与tps

          若并发数为n,响应时间为t,则 tps为n/t

          吞吐率:单位时间内网络上传输的数据量。若平均每个请求字节数为m kb,则吞吐率为m*tps

          吞吐量:若压测持续了t1 s,则吞吐量为  吞吐率*t1.

    单机支持多少并发

           这和你的机器硬件相关,也和压测工具有关。

           比如我的机器i5双核的cpu,8g的内存。压测一个简单的接口,可以支持500+的并发。

           但是如果压测方案逻辑复杂,比如在jmeter里面加了很多控制器,监听器,这些都是很耗机器性能,这时候可能连100并发都压不上去。

posted @ 2016-08-09 15:59  小迷糊~~  阅读(886)  评论(0编辑  收藏  举报