性能测试工具 性能压测中异步代替多线程客户端?

隔壁老王 · 2015年12月03日 · 最后由 隔壁老王 回复于 2015年12月16日 · 3400 次阅读

说明

压测中,哪里找如此多的客户端测试?这里的见解只是个人看法,有什么不对的地方请指正

个人见解

一直看到各种性能测试工具,lr ,jmeter...只要是测试性能,这两款工具的地位不言而喻了吧 。lr,jmeter 使用最多的是多线程,如果真的测上万的并发测试,哪里去找到如此多的客户端测试机器?

下面是找到的一些资料:

上面两条是我见过说过最靠谱的方式了,而第一种用 jmeter 的方式,找到了原帖,有些地方有缺少,无法去实践。而第二种 netty nio 客户端用 异步 的方式,个人非常赞同的,也实践过但是没有进行大量去对比,就不把数据放出来了。

疑问

是否可以用异步发请求的方式去代替多线程这样的压测方式?

其他

共收到 7 条回复 时间 点赞

gatling 已经做出来了 性能是 jmeter 的很多倍. 也甩 lr 几条街.
使用了 scala 的 akka. 基于异步线程 消息传递机制 分布式高并发.
应该是最快的压力测试工具.

#1 楼 @seveniruby
我有疑问请教小:
1.是不是客户端压测用异步的方法,我只要一台客户端测试机压测就行了?这是我最想知道的问题
2.JMeter 和 Gatling 在 300 个用户并发下的测试结果。可以很明显的看出,JMeter 的并发量在 300 上下波动,最高达到 400,最低达到 200,而 Gatling 几乎稳定在 300。由此可见 Gatling 性能的稳定性。这个摘抄于网上,这里我并没有看到 gatling 可以解放多台测试客户端的优点?

#2 楼 @284772894 那也得看你的期望, gatling 也不是万能的. 所以单台机器始终会有上限 整个上限如果满足不了压力指标, 就得用多个机器.

就是要多机器多并发的压测?JMeter 感觉做接口方法的功能测试会更合适点(个人观点)

异步个鬼啊 lr 还可以只发不管收呢 你到底要测什么

服务器端可不管你异步还是同步 ,那是客户端的事情

#6 楼 @dongdong 服务器貌似也分异步,多线程

最近查了下资料

  • 发现异步和多线程对比本来就是错误的
  • 异步是和同步相对的。同步即阻塞,也即在做 A 的时候做不了 B,AB 可以同时做互不干扰就叫异步。为了实现异步,可以利用多线程
  • 异步 IO 跟多线程没有关系,但是跟线程/进程 是有关系的,核心就是不会阻塞线程/进程
  • 异步是目的,多线程是手段。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册