Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jmeter 如何在线程之间共享一个巨大的进程_Jmeter - Fatal编程技术网

Jmeter 如何在线程之间共享一个巨大的进程

Jmeter 如何在线程之间共享一个巨大的进程,jmeter,Jmeter,我有大量API的un部署过程 我将通过查询返回json响应的restservice来获取API列表 { "count" : 10000 ,[ {api_id:"1" , api_name:"xyz"},{api_id:"2",api_name:"abc"},....,{api_id:"999",api_name:"uuf"}]} 对于每个api id,我需要执行一些常见的取消部署 现在使用单螺纹时,此孔加工需要很长时间 我想增加线程,从而缩短处理时间 目前,我的线程组如下所示,它按预期运行进程

我有大量API的un部署过程

我将通过查询返回json响应的restservice来获取API列表

{ "count" : 10000 ,[ {api_id:"1" , api_name:"xyz"},{api_id:"2",api_name:"abc"},....,{api_id:"999",api_name:"uuf"}]}
对于每个api id,我需要执行一些常见的取消部署

现在使用单螺纹时,此孔加工需要很长时间

我想增加线程,从而缩短处理时间

目前,我的线程组如下所示,它按预期运行进程,但我想在线程之间共享这个大任务,当线程1取消部署api_id 3时,线程2不应尝试取消部署相同的api_id 3。因为所有线程都试图访问相同的数据并尝试执行相同的进程,所以我会出错

现在,我正在寻找一个解决方案,它没有压倒一切的问题,并希望分享这个过程

我想在线程之间共享,比如(1000/no of threads=chunck),然后对于每个线程,开始索引是0到chunck,chunk+1到2*chunck…等等,但我不确定实现


谢谢。

假设您提取了API id(或名称),并且有1000个变量,如:

api_name_1=xyz
api_name_2=abc
api_name_3=uuf
您可以只使用每次调用时递增的函数,这样无论每个线程有多少个线程,每次迭代都会选择下一个API来执行取消部署。请参考下一个API名称,如:

 ${__V(api_name_${__counter(FALSE,)})}

有关不同JMeter计数器类型的更多信息以及如何使用它们的说明,请参阅本文