【问题标题】:Using jMeter to test IIS web garden - requests are using the same worker thread使用 jMeter 测试 IIS Web Garden - 请求使用相同的工作线程
【发布时间】:2020-08-31 10:51:07
【问题描述】:

我正在使用 IIS 网络园来处理具有 15 个工作进程的长时间运行的请求。

例如,对于 3 个浏览器,通常会使用多个工作进程。

使用 Apache jMeter,所有请求都使用同一个工作进程。

有没有办法强制使用多个工作进程?

【问题讨论】:

    标签: web iis jmeter web-garden


    【解决方案1】:

    这可能至少有两种解释:

    • 您的测试计划中有一些硬编码的 ID 或会话 ID。检查它们的存在并删除它们,将 Cookie 管理器添加到您的测试中
    • 您有一个在源 IP 模式下工作的负载平衡器,在这种情况下,您需要将策略更改为轮询或添加 2 台其他机器

    如果您使用 1 个线程进行 X 次迭代并期望不同的工作人员,请检查:

    Cookie 管理器是这样配置的:

    这样线程组(注意“每次迭代的同一用户未选中”):

    如果问题仍然存在,请分享您的计划并检查您在 Header Manager 中的某个位置是否没有导致使用 1 个工作人员的硬编码 id

    【讨论】:

    • 感谢您的回复。请求默认值和 Cookie 管理器具有默认值。我不认为这个开发服务器是负载平衡的。来自同一 IP 的不同浏览器确实会获得不同的进程。
    【解决方案2】:

    如果您观察到不一致的情况很可能您的 JMeter 配置与真实浏览器发送的请求不匹配,那么行为良好的 JMeter 脚本应该产生与真实浏览器相同的网络足迹。

    1. 通过使用View Results Tree listener 检查请求/响应详细信息,确保您的 JMeter 测试正在做它应该做的事情
    2. 使用WiresharkFiddler 等第三方工具捕获来自浏览器/JMeter 的请求,检测差异并修改您的 JMeter 配置以消除它们

    更多信息:How to make JMeter behave more like a real browser

    在绝大多数情况下,JMeter 脚本无法按预期工作,因为动态值的 correlation 缺失或实施不当

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-09-23
      • 2017-05-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多