gpt4 book ai didi

jmeter - 性能测试 : JMeter vs Tsung

转载 作者:行者123 更新时间:2023-12-01 09:27:56 25 4
gpt4 key购买 nike

JMeter 和 Tsung 有什么区别?我读到如果使用相同的硬件进行测试,Tsung 可能会产生比 JMeter 更多的负载,但它与现实有多接近呢?

最佳答案

Tsung 是用 Erlang 编写的,据说能够同时运行大量用户(10000+)

Jmeter 是用 Java 编写的,假设您的测试计划很好,它能够产生大量负载。

这里有一些关于 JMeter 性能的限制

  • Jmeter 中的每个用户都是一个操作系统线程。当使用大量并发用户时,这会增加开销(jmeter 最佳实践建议使用少量线程,http://jmeter.apache.org/usermanual/best-practices.html - 根据我的经验,当每个 jmeter 实例使用超过 1000 个线程时,您可能会遇到问题,但这可能会有很大差异取决于您的测试计划)。在运行较大的测试时,您还需要调整 JVM 设置。

  • 如果您有动态脚本(由于 jmeter 变量扩展而每次都必须重新编译的脚本),您很容易破坏性能并耗尽 PermGen 内存。将您的脚本放在单独的文件中或使用编译缓存键以避免重新编译。

  • 使用一些测试组件(例如 TreeView ,它将每个请求和响应保存在内存中)可能会对您的负载生成器造成严重破坏

我已经使用 JMeter 测试了一些非常大的站点,只要您能够减少线程数(减少用户等待以将吞吐量保持在您期望的水平),Jmeter 就可以。围绕 JMeter 有相当大的社区,使用大量协议(protocol)进行负载测试的插件和监控各种系统。 JMeter 还具有良好的脚本支持 - java、javascript,基本上可以加载到 jvm 中的任何内容(包括例如 groovy),因此它具有很强的可扩展性。

有一次(我想是使用 jmeter 2.6)我从一个负载生成器每秒运行大约 30,000 个数据库请求 (Oracle JDBC),此后进行了一些优化,所以只要您没有极端要求,Jmeter很好。选择适合您的需求和体验的一种。

注意:我使用 Tsung 的经验很少。

编辑:现在我使用 Locust ( https://github.com/locustio/locust/ )。 Tsung 自 2017 年以来就没有更新过,Locust 的用户/线程模型(greenlets)比 Jmeter 支持更多的并发用户。但最重要的是它有一个更灵活的工作流程(实际的 Python 代码而不是在 GUI 中配置/点击)

关于jmeter - 性能测试 : JMeter vs Tsung,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19885867/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com