webbench与loadrunner比较

什么webbench会比loadrunner响应请求数多,经过周末查找发现,webbench不是,TCP的终止通过双方的四次握手实现,所以webbench比loadrnner效率高。正常浏览器是,1.建立tcp连接->web浏览器返回请求,http协议中发送请求信息->返回header信息,发送请求文档->返回数据,之后服务器会发送关闭请求并置换成time_wait。

 
 
这时loadrunner会在返回告知关闭信号并且握手结束,而webbench未能这么做而直接在第二次收到数据后直接关闭。所以,webbench比loadrunner会快。所以今后,在接口测试对其进行性能测试时,可以使用webbench,但是如果按照业务逻辑进行压力测试时,要用loadrunner来模拟正常的情况。
 

TCP的终止通过双方的四次握手实现。发起终止的一方执行主动关闭,响应的另一方执行被动关闭。

1. 发起方更改状态为FIN_WAIT_1,关闭应用程序进程,发出一个TCP的FIN段;
2. 接收方收到FIN段,返回一个带确认序号的ACK,同时向自己对应的进程发送一个文件结束符EOF,同时更改状态为CLOSE_WAIT,发起方接到ACK后状态更改为FIN_WAIT_2;
3. 接收方关闭应用程序进程,更改状态为LAST_ACK,并向对方发出一个TCP的FIN段;
4. 发起方接到FIN后状态更改为TIME_WAIT,并发出这个FIN的ACK确认。ACK发送成功后(2MSL内)双方TCP状态变为CLOSED。

posted on 2010-02-20 17:22  任斌  阅读(1866)  评论(0编辑  收藏  举报

导航