개요얼마 전, Spring Boot 서버에서 주기적으로 CPU 사용량이 치솟는 현상을 트러블 슈팅한 글을 읽었습니다. 문제의 원인은 데이터베이스 커넥션 관리에 있었는데요, 여러 샤드에서 동시에 대량의 커넥션이 만료(idle)되었고, 이를 한꺼번에 재수립하는 과정에서 어플리케이션 서버에 부하가 발생했던 것이죠. 글쓴이는 이 문제 상황을 해결해 나가는 과정에서 독자들에게 다음과 같은 질문을 던졌습니다. 커넥션이 유지된 채로 두면 재사용에 유리한 게 아닐까?maxConnectionIdleTime 설정이 반드시 필요한가? 해당 아티클에서는 maxConnectionIdleTime(커넥션의 최대 유휴 시간) 설정이 필수적이라고 강조하며, 다양한 이유 중 하나로 힙 메모리의 파편화 방지를 꼽았습니다. 순간 머릿속에..