feat: 添加异步配置类,配置导入任务专用线程池

- 创建AsyncConfig配置类,启用Spring异步支持
- 配置importExecutor线程池:
  * 核心线程数: 2
  * 最大线程数: 5
  * 队列容量: 100
  * 线程名前缀: import-async-
  * 拒绝策略: CallerRunsPolicy
  * 优雅关闭: 等待60秒完成任务

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
wkc
2026-02-06 09:15:14 +08:00
parent 4c3eeea256
commit ce4000f477

View File

@@ -0,0 +1,43 @@
package com.ruoyi.ccdi.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import java.util.concurrent.Executor;
import java.util.concurrent.ThreadPoolExecutor;
/**
* 异步配置类
*
* @author ruoyi
*/
@Configuration
@EnableAsync
public class AsyncConfig {
/**
* 导入任务专用线程池
*/
@Bean("importExecutor")
public Executor importExecutor() {
ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
// 核心线程数
executor.setCorePoolSize(2);
// 最大线程数
executor.setMaxPoolSize(5);
// 队列容量
executor.setQueueCapacity(100);
// 线程名前缀
executor.setThreadNamePrefix("import-async-");
// 拒绝策略:由调用线程执行
executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
// 等待所有任务完成后再关闭线程池
executor.setWaitForTasksToCompleteOnShutdown(true);
// 等待时间
executor.setAwaitTerminationSeconds(60);
executor.initialize();
return executor;
}
}