问题标签 [locust]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 将 locust.io 用户分组到运行自己的任务集的不同部分的正确方法是什么?
假设我在蝗虫群中有 10k 用户。我想让其中 2000 个运行任务集 A 中的任务,其中 2000 个运行任务集 B 中的任务,其中 6000 个运行任务集 C 中的任务,其中每个任务集都有自己的频率。
有没有办法配置这个?我尝试在运行时设置 self.tasks,但它似乎不起作用。
node.js - 使用 Google Compute Engine 在 nodejs 上进行负载测试瓶颈
我无法弄清楚这个网站出现瓶颈的原因是什么,一旦达到大约 400 个用户,响应时间就会非常糟糕。该站点位于 Google 计算引擎上,使用实例组,具有网络负载平衡。我们用sailjs 创建了这个项目。
我一直在使用 kubernetes 对 Google 容器引擎进行负载测试,运行 locust.py 脚本。
其中一项测试的主要结果是:
最初的响应时间很好,不到一秒,但是当它开始达到大约 400 个用户时,响应时间开始大幅增加。
我已经测试了可能影响响应时间的明显因素,结果如下:
计算引擎实例(2 个标准 n2,200gb 磁盘,内存:每个实例 7.5gb):
MySQL:
MySQL 的所有其他结果似乎也很好,没有理由造成瓶颈。
我为一个新的sailjs创建的项目尝试了相同的测试,它做得更好,但仍然有糟糕的结果,大约2000个用户的5秒恢复时间。
我还应该测试什么?瓶颈可能是什么?
python - 在蝗虫中如何从一个任务中获得响应并将其传递给其他任务
我已经开始使用 Locust 进行性能测试。我想向两个不同的端点发出两个发布请求。但是第二个 post 请求需要第一个请求的响应。如何以方便的方式做到这一点。我已经尝试过如下但不工作。
amazon-web-services - Locust:来自 AWS 实例的 Web 界面
我刚开始使用安装在 AWS 实例上的 Locust,它运行良好。但我无法访问网络界面。端口 8089 在 AWS 安全组中打开。
http://ec2-XX-XX-XX-XX.eu-west-1.compute.amazonaws.com:8089对我不起作用。
有什么建议吗?
python - 正确的 POST 文件上传(使用 Locust 进行负载测试)
我正在尝试对基于 Django 的网站进行负载测试。
我使用蝗虫 0.7.3 和 python 2.7.10
在这里我进行 POST - 填写表格并附加一些文件:
一切似乎都很好,但是在服务器的上传文件夹中没有文件!
我做错了什么?
python - 错误参数 HTTPS 蝗虫请求
我正在尝试使用登录网页的用户在蝗虫中导航。我想导航将cookies发送到服务器,过程是这样的:
@task(1) 请求获取 cookie
@task(2) 使用 post 方法登录网页并再次获取 cookie
@task(3) 尝试在用户登录的情况下在我的网页中导航,我调用了这个函数:
我发送了 3 个参数、方法、我的网站的 url 和我的任务 2 的 cookie。
在我的班级蝗虫中,我有这个:
我什么也没得到,蝗虫没有例外,没有得到,没有帖子,什么也没有,如果我删除这条线,它就完美了。
我能做些什么?
amazon-web-services - 即使实例运行状况良好,Elastic Beanstalk 也会报告 5xx 错误
我需要设置一个 api 应用程序来收集要在推荐引擎中使用的事件数据。这是我的设置:
- 具有负载均衡器和自动缩放组的 Elastic Beanstalk 环境。
- 我有 2x t2.medium 实例在负载均衡器后面运行。
- EBS 配置为 64 位 Amazon Linux 2016.03 v2.1.1 运行 Tomcat 8 Java 8
- 此外,我有 8 个 t2.micro 实例用于高负载测试 api,每秒发送数千个请求以由 api 处理。
- 我使用 Locust ( http://locust.io/ ) 作为我的负载测试工具。
- Locust 运行的每个 t2.micro 实例最多可以发送约 500req/sec
当请求/秒低于 1000,可能是 1200 时,一切正常。一旦超过,我的负载均衡器报告它背后的一些实例报告 5xx 错误(附加)。我还尝试使用负载均衡器后面的 4 个实例,虽然开始时速度高达 3000req/sec,但不久之后,ebs 运行状况工具和 Locust 都报告 503 和 504,而所有实例都处于完美运行状态根据 ebs Health Overview 中的实际数字,显示 CPU 利用率仅为 10%-20%。
我在配置环境时缺少什么东西吗?似乎无论我在负载均衡器后面有多少台机器,环境每秒处理的请求都不超过 1000-2000 个。
编辑:现在我确定是 ELB 导致了问题,而不是实例。
我对 10 个模拟用户进行了负载测试。每个用户发送约 1 个请求/秒,负载增加 10 个用户/秒到 4000 个用户,这应该等于大约 4000 个请求/秒。它似乎仍然不喜欢任何超过 3.5k 请求/秒(附件1 )的请求率。
正如您从附件2 中看到的,负载均衡器后面的 4 个实例运行状况良好,但我仍然不断收到 503 错误。这只是负载平衡器本身造成的问题。看看 SurgeQueueLength 和 SpilloverCount 如何在某个时候迅速增加。(附件3)我试图找出原因。
此外,我完全移除了负载均衡器,仅使用一个实例进行了测试。它最多可以处理大约 3k req/sec。(attachment4和attachment5),所以它绝对是负载均衡器。
也许我错过了负载均衡器默认具有的一些关键限制,例如 1024 的队列大小?1 个负载均衡器的正常处理速率是多少?我应该添加更多负载均衡器吗?它可能与可用区有关吗?来自一个区域的 ELB 侦听器正在尝试路由到来自不同区域的实例?
更新:启用跨区域负载平衡
python-2.7 - Python - 使用 locust 记录请求摘要统计信息
我用蝗虫
http://docs.locust.io/en/latest/index.html
模拟一群网络用户进行随机站点访问和文件下载。通过指定设置日志记录选项
但这仅在代码中记录内部事件和打印语句的子集,它不会记录在控制台(如果您使用该--no-web
选项)或 UI(如果您未指定该--no-web
选项)上打印出的请求统计信息.
如何在日志文件中捕获请求统计信息?
python - 从两个不同的 Linux 发行版运行 python locust 脚本时出错
我写了一个蝗虫脚本来测试一个网站。脚本很简单,只是一个请求重复了几次。
在具有 Linux Mint 和 Python 2.7.6 的虚拟机中,该脚本以正确的方式和我想要的方式工作。
例如,我在没有 Web 界面的情况下运行脚本,如下所示:
我在终端窗口中获得了正确的统计数据。
当我在另一个使用 CentOS 和 Python 2.7.11 的虚拟机上运行相同的脚本时,我收到以下错误:
你能帮我理解这个问题吗?非常感谢。