我正在基于spring
的服务器应用程序。基本上它会在非常短的时间间隔内对各种体育赛事的成绩进行轮询并保存在db中。对于轮询,定期会有很多(可以是约100个)不同的apis呼叫,例如某些api呼叫会有3秒钟的间隔,有些则有5秒钟等等,服务器将频繁地间隔保持最新数据的轮询。春 - 动态添加和删除计划任务
这些调用将被动态添加和删除。我没有使用弹簧的经验。我想我必须使用一些调度程序。任何人都可以在正确的方向指出哪种方法或哪种调度程序在这种情况下最好。
我正在基于spring
的服务器应用程序。基本上它会在非常短的时间间隔内对各种体育赛事的成绩进行轮询并保存在db中。对于轮询,定期会有很多(可以是约100个)不同的apis呼叫,例如某些api呼叫会有3秒钟的间隔,有些则有5秒钟等等,服务器将频繁地间隔保持最新数据的轮询。春 - 动态添加和删除计划任务
这些调用将被动态添加和删除。我没有使用弹簧的经验。我想我必须使用一些调度程序。任何人都可以在正确的方向指出哪种方法或哪种调度程序在这种情况下最好。
在本质上要注入的调度任务执行的实例
@Configuration
public class MyApplicationConfiguration {
@Bean
public ThreadPoolTaskScheduler threadPoolTaskScheduler() {
ThreadPoolTaskScheduler tpts = new ThreadPoolTaskScheduler();
// maybe configure it a little?
return tpts;
}
@Bean
public MyService myService() {
return new MyService();
}
}
class MyService {
@Autowired
private ThreadPoolTaskScheduler tpts;
public void doSomething() {
Runnable task = ...
tpts.scheduleWithFixedDelay(task, 1000);
}
}
你可以看到一个reasonable guide here,或SchedulingTaskExecutor Javadoc和Spring Task Execution and Scheduling Reference
感谢您的回复。我会仔细看看的。你知道我们什么时候使用Quartz调度器吗? – anujprashar
这里有一个类似的教程http://www.baeldung.com/spring-quartz-schedule – ptomli