软件基础概念
线程&并发用户数
什么是线程?
线程是程序中的一个执行流,每个线程都有自己的专有寄存器(栈指针、程序计数器等),但代码区是共享的,
即不同的线程可以执行同样的函数。
一般在性能测试过程中,我们认为一个线程就是一个虚拟用户。
什么是多线程?
多线程是指程序中包含多个执行流,即在一个程序中可以同时运行多个不同的线程来执行不同的任务,
也就是说允许单个程序创建多个并行执行的线程来完成各自的任务。
一个进程是由一或多个线程组成,进程只负责资源的调度和分配,线程才是程序真正的执行单元,负责代码的执行。
多线程的好处:
可以提高CPU的利用率。在多线程程序中,一个线程必须等待的时候,CPU可以运行其它的线程而不是等待,这样就大大提高了程序的效率。
并发用户数:在同一时刻与服务器进行交互的在线用户数量。
性能测试
性能测试概念?
百度百科定义:性能测试是通过自动化测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能测试。
性能测试分类 duersi 基准测试:在给系统施加较低压力时,查看系统的运行状况并记录相关数为后续性能测试作为参考基准。 负载测试:通过对被测试系统不断地加压,直到超过预定的指标或者部分资源已经达到了一种饱和状态,一般运行时间比较短。 压力测试:对被测系统逐渐加压,当达到一定的饱和程度(如CPU、硬盘等已经处于饱和状态),直到系统出现错误或异常,找到系统瓶颈,一般运行时间较长。 配置测试:配置测试是通过调整系统软硬件环境,了解各种不同环境对系统性能的影响,从而找到系统的最优配置。 并发测试:模拟用户并发访问软件系统,测试多用户同时访问同一应用、模块或数据,观察系统是否存在死锁、系统处理速度是否明显下降等其他性能问题。 稳定性测试:在给系统加载一定业务压力的情况下,使系统运行一段时间,以此检测系统是否稳定。 。
性能指标
- 响应时间:从客户端发起的一个请求开始,到客户端接收到从服务器端返回的响应结束,这个过程所耗费时间。
- 平均响应时间(average):每个请求request的平均响应时间。
- 吞吐量TPS(Transaction Per Second):每秒钟系统能够处理的交易或事务的数量。
- 并发数:即并发用户数,指系统可以同时承载的正常使用系统功能的用户数量。
- 每秒点击次数HPS(Hits Per Second):指在一秒钟的时间内用系统处理的事务量。它一般和TPS成正比关系,是B/S系统中非常重要的性能指标之一。