【问题标题】:Locust - Hatch Rate - EC2蝗虫 - 孵化率 - EC2
【发布时间】:2016-09-15 18:49:03
【问题描述】:

我正在使用 locust 对应用程序进行负载测试。我在本地 ubuntu 系统上编写并测试了脚本,一切顺利。

我使用 Amazon Linux 映像创建了一个 EC2 实例,并在调整 /etc/security/limits.conf 文件中的文件限制后,我加载了 locust,并且进行了一个小测试(简单的 GET 测试,只是为了检查管道,2000 个用户,20 个孵化率)。

但是,当我加载一个更大的测试时,8000 个用户 40 个孵化率,我注意到大约 3,000 或 4,000 个用户的孵化率似乎变慢了,只是增加了 4 - 5 个而不是 40 个新“用户”一次。所以花了很长时间才达到 8000。这是预期的行为吗,如果不是,知道问题可能是什么吗?

【问题讨论】:

    标签: amazon-ec2 locust


    【解决方案1】:

    Locust 所谓的“用户”实际上是 gevent 产生的任务集。这意味着您在单个 Python 进程中生成了数千个 eventlet,这意味着管理这些 eventlet 需要大量开销。

    如果您想生成数千个任务集,我建议您在 distributed mode 中运行 Locust。您可以在同一硬件上运行许多从属服务器,或者将您的从属服务器分布在多个实例上。谷歌写了一篇简洁的文章,并为此目的开源了一些 Kubernetes 容器。我们用 Alpine 和一个经过大量修改的 Locust 编写了自己的 Docker 容器,我们的 slave 与 TaskSet 的比例最终为 1:100。从属与实例的比例很大程度上取决于您获得的实例大小。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-12-10
      • 2020-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-13
      • 2019-01-31
      相关资源
      最近更新 更多