K6压测工具相关总结

  • K6压测工具:
    • 能够利用Go的性能优化,也就意味着内存利用率大大降低,k6中的一个线程不会超过100kb,而JMeter使用的JVM线程则需要默认1MB,是k6的十倍。
  • 负载测试工具运行虚拟用户的最简单也是最常见的方法是将一个虚拟用户分配给一个内核或操作系统线程,一个线程一个虚拟用户模式存在严重缺陷,当虚拟用户正在等待响应或正在执行sleep()命令时,线程会被阻止,无法运行其进程。

  • 在k6中,每个虚拟用户都在goroutine而不是线程上运行,这有什么区别呢?

    • goroutines可以由Go Scheduler控制,它就像一个交通警察,它通过“work stealing”和线程之间的工作交接,重用闲置的线程并智能地分配工作,这与构建负载均衡器的原理相同,监督工作流程的外部监视器可提高总体绩效,
    • Go在本质上以许多编程语言都没有的方式实现了负载平衡,这使其非常适合于负载测试工具。

K6工具的优势:

  • 没有GUI意味着在负载测试期间没有资源开销

  • 线程模型而言:

    • JMETER:1个线程1个虚拟用户:性能较慢,资源成本较高
    • K6:一个Goroutine 1个虚拟用户:性能较快,资源成本更低
  • K6下包含的Executor

关于两者比较,有更多信息:

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值