首页 > 解决方案 > 使用 jmeter 对 jenkins master 进行压力测试

问题描述

我正在尝试使用 jmeter 对我的詹金斯基础设施进行压力测试。我创建了一个 Jmeter TestPlan,它使用 jmeter 的 HTTPRequest 组件来触发使用 jenkins rest api 的 jenkins 构建。这个想法是触发大量构建并监控系统运行状况。当我为单线程运行 jmeter 测试计划时,它工作正常,但是当我使用多个线程运行它时,应该为每个线程运行每个 HTTPrequest 以触发 jenkins 构建......但它只运行一次,即每个构建只触发一次在 jenkins 上(不管线程数是多少)。在 Jmeter 测试结果中,它显示所有线程的 HTTPRequest 都是成功的。但在 Jenkins 上,构建似乎只针对 1 个线程组触发。

标签: jenkinsjmeter

解决方案


表现良好的 JMeter 测试必须代表真实的系统使用情况,如果要模拟用户单击 Jenkins“立即构建”按钮,则需要发送如下请求:

http://jenkins_host:port/job/jobname/build延迟=0sec

这个delay=0sec参数非常重要,就好像你没有它一样,只有第一个请求会触发作业,使用这个参数,你将拥有与可用执行器一样多的并发作业:

在此处输入图像描述

如果没有足够的执行器来服务所有的作业,这些作业将被放入队列中

您可以使用JMeter PerfMon 插件来监控 Jenkins 节点的健康状况(CPU、RAM、JVM 指标等)


推荐阅读