JMeter 的物理限制是什么?

What are the physical limits of JMeter?

我正在开发一个用 PHP 编写的 Web 应用程序,它将被数百万访问者使用,这些访问者可以同时从不同的 IP 地址创建许多点击。对于这个特定的应用程序,在同一秒内可能有数千次点击是非常真实的可能性。就这一事实而言,优化是不可能的。

就是说,我一直在研究 JMeter 的压力测试。我的理解是这是使用多线程来模拟对指定服务器的许多http请求(或其他类型的请求)。

我当时的想法是,使用诸如此类的工具,您只能在一台计算机上同时执行这么多并行请求,我担心如果我花时间进一步学习 JMeter 是不够的website/service 上线时的准确测试。

也就是说,在四处寻找并没有找到答案之后,JMeter 测试的物理限制是什么?它能准确测试什么样的负载?是否有 JMeter 的替代品(如 Grinder)或模拟许多不同 IP 地址连接到服务器进行测试的服务(付费或免费)?

  1. 虚拟用户(线程)数量的限制非常高(> 20 亿个线程)所以这是我最不想担心的事情,特别是考虑到 JMeter 可以 运行 in Distributed Mode
  2. 当谈到 Web 应用程序性能测试时,行为良好的 JMeter 测试计划准确地模拟坐在真实浏览器后面的真实用户。这些 "users" 将完全由您决定。有关详细信息,请参阅 How to make JMeter behave more like a real browser 指南。
  3. 如果您需要负载来自不同的 IP(您知道 distributed testing already, don't you?) be aware that JMeter is capable of IP Spoofing
  4. 备选方案是(除了上述 Grinder)

    但是我相信 JMeter 更容易学习,有更好的文档和更大的社区