기타/개발일지

[Java] 폴더 파일개수 체크 성능 이슈

반응형

폴더에 파일개수를 확인하는 로직이 있었는데 오후만 되면 항상 느려지고 cpu 점유가 엄청 올라갔다.

 

폴더는 하루마다 새로 생성돼서 파일을 쌓는데 처음엔 괜찮다가 쌓이면 느려지는 문제 확인.

 

코드를 보니 for문 안에서 new File(path).list().length 를 계속 불러 오고 있었다

 

파일이 적을 때는 괜찮은데 많아질수록 File 객체를 계속 생성해서 불러오니 당연히 느려질 수 밖에 없는 코드...

 

저 부분에 cache를 적용했다.

 

for문 마다 불러오는게 아니라 특정 작업이 생겼을 때 개수를 확인해서 cache 업데이트

 

for문에서는 cache값만 확인하니 cpu 점유가 반절로 줄었다.

 

** 리소스 많이 먹는 작업을 for문에 넣지 않도록 주의하자

반응형

'기타 > 개발일지' 카테고리의 다른 글

nginx 499 응답 처리  (0) 2025.04.01
2021-04-08  (0) 2021.04.08
2021-03-31  (0) 2021.03.31
2021-03-29  (0) 2021.03.30