menuhwang / pubg-analyzer

1 stars 1 forks source link

[Bug] TaskRejectedException 발생 #107

Closed menuhwang closed 10 months ago

menuhwang commented 10 months ago

버그 설명

TaskRejectedException 발생

생성된 스레스풀이 감당해내지 못하는 경우 발생.

버그 발생 상황

너무 많은 매치 조회 API 호출로 인하여 발생.

에러 로그

[2023-11-03 09:31:39.336] ERROR [http-nio-8080-exec-8] c.m.p.e.GlobalExceptionHandler           -- Executor [org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor$1@3c4220b9[Running, pool size = 100, active threads = 15, queued tasks = 98, completed tasks = 876]] did not accept task: java.util.concurrent.FutureTask@754e9ba[Not completed, task = com.menu.pubganalyzer.service.PubgService$$Lambda$1996/0x0000000840cbd440@6343a5d7]
org.springframework.core.task.TaskRejectedException: Executor [org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor$1@3c4220b9[Running, pool size = 100, active threads = 15, queued tasks = 98, completed tasks = 876]] did not accept task: java.util.concurrent.FutureTask@754e9ba[Not completed, task = com.menu.pubganalyzer.service.PubgService$$Lambda$1996/0x0000000840cbd440@6343a5d7]
menuhwang commented 10 months ago

스레드풀 사이즈를 늘리는 방식은 하드웨어에 큰 부담이 될 우려가 있음.

비즈니스 로직 자체를 수정하는 방법으로 접근.

조회해야할 매치가 100개 이상인 경우 최근 매치 100개만 조회하도록 수정