Jmeter学习(二)

时间:2023-03-09 20:16:02
Jmeter学习(二)

1. Jmeter预置知识-http协议

应用层协议http,ftp,smtp

1) http之url

http 超文本传输协议,基于请求与响应模式的,无状态,应用层协议。

http url: http://host[“:”port][abs_path]

http表示要通过HTTP协议来定位网络资源;host表示合法的Internet主机域名或者IP地址;port指定一个端口号,为空则使用缺省端口80;abs_path指定请求资源的URI;如果URL中没有给出abs_path,那么当它作为请求URI时,必须以“/”的形式给出,通常这个工作浏览器自动帮我们完成。
eg:
输入:www.baidu.com
浏览器自动转换成:http://www.baidu.com/
http:192.168.0.116:8080/index.jsp

2) 请求报文<----->响应报文

请求行              状态行

消息报头           消息报头

请求正文           响应正文

请求方法:GET/POST/HEAD

常见状态代码、状态描述、说明:
200 OK      //客户端请求成功
400 Bad Request  //客户端请求有语法错误,不能被服务器所理解
401 Unauthorized //请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用 
403 Forbidden  //服务器收到请求,但是拒绝提供服务
404 Not Found  //请求资源不存在,eg:输入了错误的URL
500 Internal Server Error //服务器发生不可预期的错误
503 Server Unavailable  //服务器当前不能处理客户端的请求,一段时间后可能恢复正常
eg:HTTP/1.1 200 OK (CRLF)--以(CRLF)结尾表示回车或换行

查看请求响应报文:火狐+firebug组件

2. Jmeter预置知识_cookie

cookie,cache,session区分

1)Session是由应用服务器维持的一个服务器端的存储空间,存放在服务器端的内存中。用户在连接服务器时,会由服务器生成一个唯一的SessionID,用该SessionID 为标识符来存取服务器端的Session存储空间。而SessionID这一数据则是保存到客户端,用Cookie保存的。

第一次请求时,服务器自动创建一个session并生成一个sessionID.

第二次请求时,请求报头会加上Cookie:JSESSIONID=客户端第一次拿到的session ID

Session超时删除:超时指的是连续一定时间服务器没有收到该Session所对应客户端的请求,并且这个时间超过了服务器设置的Session超时的最大时间。

对于多标签的浏览器(比如360浏览器)来说,在一个浏览器窗口中,多个标签同时访问一个页面,session是一个。对于多个浏览器窗口之间,同时或者相隔很短时间访问一个页面,session是多个的,和浏览器的进程有关。

2)cookie前面已经说了是保存sessionID,是由客户端维持的存储空间。cookie消失session也随之删除。

3)cache服务端缓存,用于缓冲数据。

3. web性能测试指标及标准

1)TPS/QPS: 每秒查询数/处理数

2)并发用户数量: 一般并发有问题通常是程序问题,并发数量因系统而定。看能承载多少并发用户,寻找最大并发数。

3)TLLB 请求响应时间:客户端发起一个请求至服务器端返回结束。

标准:3/5/10

在3秒钟之内,页面给予用户响应并有所显示,可认为是“很不错的”;

在3~5秒钟内,页面给予用户响应并有所显示,可认为是“好的”;

在5~10秒钟内,页面给予用户响应并有所显示,可认为是“勉强接受的”;

超过10秒就让人有点不耐烦了,用户很可能不会继续等待下去;

4)事务响应时间 一系列请求组成,因系统而异,但是可以参考3/5/10.

5)业务吞吐率=传输的数据总量/时间,值越大越好

6)资源利用率:CPU/磁盘/数据库--以后做专题研究,有必要好好研究下。

4. Jemter简单实例_参数化

1)多并发用户

Jmeter学习(二)

2)多用户登录_参数化

Jmeter学习(二)

Jmeter学习(二)