파란하늘의 지식창고
thymeleaf-layout-direct 성능 문제 (groovy 성능 문제)
Study/Java 2019. 9. 24. 10:51

3년 전 쯤에 했던 작업이라 상세한 내용을 적지는 않고 요약해서 정리만 한 글임. Spring 을 사용하면 보통 web template engine을 thymeleaf를 많이 쓴다. 그런데 thymeleaf가 버전이 올라가면서 자체 성능이 올라갔다고 하지만 실제로 성능 테스트를 해보면 정말 느리고 많이 몰리면 서버가 다운된다. 왜 그런가 힙 덤프를 떠보니 문제가 되던 포인트는 groovy 였다. groovy의 어느 위치인지 기억이 나지 않지만 자체 캐시 처리를 하는 코드에 synchronized 처리가 되어 있었고 해당 부분에 병목이 생기면서 데드락이 발생해 성능이 저하되었다. (아래 jira의 경우랑 비슷한거 같긴한데 저건 1.5.1 버전의 closed 된 jira라 관련 내용인지 확실하지 않다...)..