Java的。模拟用户定期操作(Threads,ExecutorService)

时间:2015-04-18 10:07:28

标签: java multithreading scheduledexecutorservice

我想创建一个java独立应用程序,模拟用户定期向服务器发送帖子请求。

我计划使用Retrofit来制作http请求,并使用ExecutorService来控制"用户"并安排任务(发布请求)。我的想法是,我不想注册相同的任务 反复重复,但每个用户定期重复,要完成一项新任务。

让我举个例子:

有3个用户(|),每个用户每隔10秒(-----)发出一个随机初始延迟(**)的帖子请求。请注意,任务是不同的。

| **任务1 ----- ----- task11 ----- task111 .... task1111
| ****** TASK2 ----- ----- task22 ----- task222 .... task2222
| **** TASK3 ----- ----- task33 ----- task333 .... task3333

我知道像ApacheJMeter这样的工具已经这样做了,但他们可以  难以设置,我有兴趣从头开始构建自己的。

实现这一目标的专业和优雅方式是什么?

提前谢谢你,
亚历山大

1 个答案:

答案 0 :(得分:0)

最简单的想法是创建USERS *线程,其run()方法看起来类似于

void run() {
     while(1) {
          doStuff();
          sleep(SECONDS * 1000);
     }
}

但我不确定这是否是正确的方法