지대한
7 months ago
4 changed files with 61 additions and 3 deletions
@ -0,0 +1,44 @@ |
|||||||
|
package kr.co.palnet.kac.socket.core.config; |
||||||
|
|
||||||
|
import lombok.extern.slf4j.Slf4j; |
||||||
|
import org.springframework.aop.interceptor.AsyncUncaughtExceptionHandler; |
||||||
|
import org.springframework.context.annotation.Bean; |
||||||
|
import org.springframework.context.annotation.Configuration; |
||||||
|
import org.springframework.scheduling.annotation.AsyncConfigurer; |
||||||
|
import org.springframework.scheduling.annotation.EnableAsync; |
||||||
|
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; |
||||||
|
|
||||||
|
import java.util.concurrent.Executor; |
||||||
|
|
||||||
|
@Slf4j |
||||||
|
@EnableAsync |
||||||
|
@Configuration |
||||||
|
public class AsyncConfig implements AsyncConfigurer { |
||||||
|
@Override |
||||||
|
public Executor getAsyncExecutor() { |
||||||
|
ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); |
||||||
|
executor.setCorePoolSize(10); |
||||||
|
executor.setMaxPoolSize(50); |
||||||
|
executor.setQueueCapacity(100); |
||||||
|
executor.setThreadNamePrefix("th-async-default-"); |
||||||
|
executor.initialize(); |
||||||
|
return executor; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public AsyncUncaughtExceptionHandler getAsyncUncaughtExceptionHandler() { |
||||||
|
return (ex, method, params) -> log.error("ERROR : {}", ex.getMessage(), ex); |
||||||
|
} |
||||||
|
|
||||||
|
@Bean |
||||||
|
public Executor restClientThreadPoolTaskExecutor() { |
||||||
|
ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); |
||||||
|
executor.setCorePoolSize(10); |
||||||
|
executor.setMaxPoolSize(100); |
||||||
|
executor.setQueueCapacity(500); |
||||||
|
executor.setThreadNamePrefix("th-async-rc-"); |
||||||
|
executor.initialize(); |
||||||
|
return executor; |
||||||
|
} |
||||||
|
|
||||||
|
} |
Loading…
Reference in new issue