spring task
默认springtask是单线程执行,如果有多个任务,会导致任务排队执行。
通过spring.task配置,可以修改默认配置方式。
具体完整使用步骤如下:
1.开启spring task功能
@EnableScheduling
@Configuration
public class SchedulingConfig {}
2.编写业务逻辑代码
@Slf4j
@Component
public class SchedulerJob {
@Scheduled(cron = "0/5 * * * * ?")
public void testOne() throws InterruptedException {
//业务逻辑1
}
@Scheduled(cron = "0/3 * * * * ?")
public void testTwo() throws InterruptedException {
//业务逻辑2
}
}
将job以bean的方式添加到spring容器中
3.配置连接池信息
spring.task.scheduling.pool.size=2
spring.task.scheduling.shutdown.await-termination=false
spring.task.scheduling.thread-name-prefix=scheduling-task-
spring.task.scheduling.shutdown.await-termination-period=10s
连接池信息根据实际项目需要配置,线程前缀名称最好带有项目信息或者任务信息