1、性能测试分类web
一、负载测试:数据库
经过逐步加压的方法,达到既定的性能阈值的目标,阈值的设定应是小于某个值,如cpu使用率小于等于80%服务器
二、压力测试:网络
经过逐步加压的方法,使得系统的某些资源达到饱和,甚至失效的状态,简单粗暴的解释就是什么条件能把系统压崩溃架构
三、并发测试:并发
在同一时间內,多个虚拟用户在同时访问同一个模块,同一个功能,一般的测试方法就是设置集合点负载均衡
四、容量测试:性能
一般是指数据库层面的,目标是获取数据库的最佳容量能力。又称为容量预估。具体测试方法为在必定的并发用户,不一样的技术数据量下,观察数据库的处理能力,即获取数据库的各项性能指标测试
五、可靠性测试:spa
又称为稳定性测试或疲劳测试。是指系统在高压状况下,长时间的运行是否稳定。
如cpu使用率在80%以上,7*24小时的运行,系统是否稳定
六、异常测试:
又称为失败测试。是指系统架构方面的测试,如在负载均衡中,要测试宕机,节点挂掉等状况的系统反映
2、性能指标的定义
一、事物
从客户端发起的一个请求或多个请求(这些请求组成一个完成的操做),到客户端收到服务器返回的响应
二、请求响应时间
客户端发起的一个请求开始,到客户端接收从服务器返回的响应,整个过程所耗费的时间
三、事物响应时间
事务多是一个或者多个请求组成的,事物响应时间主要针对于用户的角度而言,如转帐
四、并发
没有严格意义上的并发。并发总有前后,不管差距是1毫秒仍是1微秒,总有一个时间差。因此并发讲的是一个时间范围内,好比1S内,
举例:
一、多用户在系统上进行同一操做,好比双11,你们针对同一种商品进行秒杀
二、多用户在系统上进行不一样操做,好比双11,你们针对不一样商品进行秒杀,或者你们有进行其余操做,好比商品浏览
五、并发用户数
同一单位时间内,对系统发起请求的用户数量
六、吞吐量
一次性能测试过程当中网络上传输数据量的总和
七、吞吐率
单位时间内网络上传输的数据量,公式(吞吐率=吞吐量/传输时间)
八、点击率
每秒钟用户向服务器提交的请求数。这个指标是web应用程序特有的一个指标,能够想象为每秒钟用户总共在页面进行了多少次点击的动做,可是须要注意的是一次鼠标点击操做后,客户端有可能向服务器发送了屡次请求
九、资源使用率
对不一样系统资源的使用状况,如cpu,内存,io
3、性能测试的需求分析
一、明确测试指标
二、明确测试场景
4、服务器性能测试范围
测试目的:
发现服务器性能瓶颈。配置的不一样可以承载的最大任务数不一样,可以承载的压力不一样
5、服务器性能测试范围
一、CPU
二、内存
三、磁盘
四、网络
五、版本
六、性能损耗的计算方式
怎么计算性能损耗?(相同的指标,相同的场景,相同的用户并发数进行屡次一样的压测)
6、进程与线程的区别
定义:
进程具备必定独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位(进程是能够独立运行的)
线程是进程的一个实体,是cpu调度和分派的基本单位,他是比进程更小的独立运行的基本单位,线程基本上不拥有系统资源,只拥有一点在运行中比不可少的资源。一个线程能够建立和撤销另一个线程
区别:
一、一个线程只能属于一个进程,一个进程能够拥有多个线程
二、线程是进程工做的最小单位
三、一个进程会分配一个地址空间,进程与线程之间不共享地址空间。即不共享内存
四、同一个进程下的不一样的多个线程,共享父进程的地址空间
五、线程在执行过程当中,须要协助同步。不一样进程的线程间要利用消息通讯的办法实现同步
六、线程做为调度和分配的基本单位,进程做为拥有资源的基本单位
进程-优势:
一、每一个进程相互独立,不影响主程序的稳定性,子进程崩溃不影响其余进程
二、经过增长CPU,就能够扩充性能
三、能够尽可能减小线程加锁与解锁的影响,极大的提升了性能
进程-缺点:
一、逻辑控制复杂,须要和主程序交互
二、多进程调度开销大
线程-优势:
一、程序逻辑和控制方式简单
二、全部线程能够直接共享内存和变量等
三、线程方式的总资源比进程方式少
线程-缺点:
一、每一个线程与主进程共用地址空间(即共用内存),最大内存空间受限
二、线程之间的同步和加锁不易控制
三、一个线程的崩溃可能影响到整个程序的稳定性