spring boot

Spring Boot Thymeleaf Caching(템플릿 캐싱)

소리소리솔소리 2023. 3. 13. 11:20

기본적으로 템플릿은 최초 사용될 때 한 번만 파싱 되는 성격을 가지고 있다.

파싱 된 결과는 향 후 사용을 위해 캐시에 저장되는데, 이것은 프로덕션에서 애플리케이션을 사용할 때 좋은 기능이다.

매번 요청을 처리할때마다 불필요하게 템플릿을 파싱하지 않으므로 성능을 향상시킬 수 있다.

 

캐싱이 개발할 때는 오히려 불편한 요소로 작용한다. 애플리케이션을 시작하고 디자인 수정 후 새로고침을 하더라도 수정 전의 페이지만 나오는 것을 확인할 수 있는데, 이를 보완하기 위해 해당 캐싱의 속성을 설정할 수 있게 지원해준다.

 

기본적으로 모든 템플릿 엔진인 FreeMarker, Groovy Templates, Thymeleaf 등은 캐싱 활성화 속성이 true로 되어있다.

따라서 캐싱을 비활성화 하려면 false로 설정하면 된다.

application.properties

spring.thymeleaf.cache= false

application.yml

 

 

 

주의할점은

프로덕션에서 애플리케이션을 배포할 때는 설정한 속성을 삭제하거나 true로 변경해야 한다.

이 설정은 개발할 때 편의성을 위해서만 사용하기를 권장한다.

 

하지만 DevTools를 사용하는 것이 훨씬 더 간편하다. 개발 시점에 DevTools는 많은 도움을 제공하며, 모든 템플릿 라이브러리 캐싱을 비활성화 해주기 때문이다. 또한 애플리케이션이 실무 운영을 위해 배포할 때면, DevTools 자신이 비활성화되므로 캐싱이 활성화 될 수 있다.

'spring boot' 카테고리의 다른 글

Spring Boot @Builder  (0) 2023.03.14
Window 환경에서 JDK 설치 & 환경변수 설정  (0) 2023.03.07
Spring Boot, React 연동하기  (0) 2023.02.15
Spring Boot  (0) 2022.11.04