【问题标题】:How to calculate Pacing time in load runner如何计算负载运行器中的起搏时间
【发布时间】:2016-11-13 07:45:26
【问题描述】:

我必须对 50 个用户运行 100 次迭代。考试总时长为 1 小时。 1个用户可以做2次迭代,脚本中的事务数为6。

如何计算起搏时间?

【问题讨论】:

    标签: performance-testing loadrunner


    【解决方案1】:

    根据利特尔定律:

    No. of Concurrent Users(N) = 
        Throughput or TPS(X) * [
            Response Time (RT) + Think Time (TT) + Pacing (P)
        ]
    

    这里RT+TT 是脚本执行时间SET,您可以通过运行脚本一次并将所有事务的RT 和所有思考时间相加来计算。

    假设 SET 为 60 秒。

    根据你的问题

    total transactions in 1 hr = 
        100(Iterations) * 
        50(Users) * 
        2(Each User Iteration) * 
        6(No. of Transactions)
    = 60000 Transactions/hr
    

    将其转换为TPS = 60000/3600 = 16.66

    现在将所有值都纳入利特尔定律:

    50 = 16.66 (60 - Pacing)
    Pacing = 60 - 50/16.66
    Pacing = 57 secs (approx).
    

    【讨论】:

      【解决方案2】:

      Pacing 是迭代之间的等待时间,所以我同意@Cyber​​Ninja,在您的用例中,pacing 是 1800 秒,因为它是实现目标的脚本的最大持续时间:一小时内产生 100 次迭代,50 个用户。 步调不是 Response_time + Think_Time!

      【讨论】:

        【解决方案3】:

        Pacing 是“迭代间”间隙,用于控制测试期间的迭代速率。如果 1 位用户的目标是每小时完成 2 次迭代,则导致 1800 秒的起搏(上面提到的小定律)。现在只要这 6 笔交易的响应时间和它们之间的思考时间之和小于 1800 秒,您就可以达到所需的速率。 注意:迭代不等于事务,除非迭代只有一个事务。参考this获得图片理解

        https://theperformanceengineer.com/2013/09/11/loadrunner-how-to-calculate-transaction-per-second-tps/

        【讨论】:

        • @satish:Sudhakar 的要求是每小时生成 100 次迭代,因此无论迭代中的事务数量如何,您都必须使用此数字来计算节奏
        【解决方案4】:

        始终应用利特尔定律来计算 Pacing、ThinkTime、No.of VUsers

        根据利特尔定律:VUser 数= 吞吐量*(Responce_Time + Think_Time)

        解释

        吞吐量 = 总交易数/以秒为单位的时间 , Pacing= (Response_Time + Think_Time)

        根据您的要求- 迭代总数 100 和 1 次迭代有 6 个事务,所以事务总数 = 600

        1 分钟的吞吐量为:600/60 = 10 , 1 秒的吞吐量为:0.16

        根据公式 50 = 0.16*(Pacing) 节奏 = 312.5 秒

        要在 1 小时内完成 100 次迭代,您必须设置 pacing 312.5 秒,确保 Pacing = Response_time + Think_Time。

        【讨论】:

          【解决方案5】:

          例子:

          1000 个用户,每小时 10000 次完整迭代

          10,000/1,000 = 每个用户每小时 10 次迭代

          每小时 3600 秒 / 每位用户每小时 10 次迭代 = 平均每 360 秒(六分钟)一次迭代

          LoadRunner 中的随机算法基于 C rand() 函数,该函数对于大型数据集大致(但不完全)一致。因此,我采用从一次迭代开始到下一次迭代的平均节奏间隔,然后将其调整为正/负 20%。

          因此,您的 360 ( 0:06:00 ) 秒节奏变为 288 秒 (0:04:48) 到 432 秒 (0:07:12) 的范围。

          您将为要暂存的每个业务流程运行这些计算

          请查看您的生产日志以获取有关从第 X 页到第 X+1 页的用户范围的信息。这很容易实现,因为每个顶级页面都引用了 REFERER,或者它来自的上一页。按客户端 IP 分组的时间戳比较可以提供您需要的思考时间范围。

          【讨论】:

          • 你能告诉我吗
          • 我刚做了。举例
          猜你喜欢
          • 1970-01-01
          • 2019-10-11
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-06-21
          • 1970-01-01
          • 1970-01-01
          • 2013-06-28
          相关资源
          最近更新 更多