엄지월드

지연 초기화 문제(Initializing Spring DispatcherServlet) 본문

java/Spring

지연 초기화 문제(Initializing Spring DispatcherServlet)

킨글 2025. 6. 30. 16:17

아래와 같이 운영 환경에서 처음 요청이 와야 Initializing Spring DispatcherServlet 'dispatcherServlet'이 실행되는 현상이 있었다.

확인해보니 Spring Boot의 기본 설정에서는 DispatcherServlet이 지연 초기화(lazy initialization)되도록 설정되어 있다고 한다.

2025-06-30 05:24:27 2025-06-30T05:24:27.537+09:00  INFO 1 --- [] [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port 8080 (http) with context path ''
2025-06-30 05:24:27 2025-06-30T05:24:27.937+09:00  INFO 1 --- [] [           main]      : Started NklcbdtyApplication in 194.784 seconds (process running for 211.547)
2025-06-30 16:01:35 2025-06-30T16:01:35.742+09:00  INFO 1 --- [] [nio-8080-exec-6] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring DispatcherServlet 'dispatcherServlet'
2025-06-30 16:01:35 2025-06-30T16:01:35.841+09:00  INFO 1 --- [] [nio-8080-exec-6] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'

 

이로 인해 첫 요청을 보내는 유저의 경우 사이트가 작동하지 않는 것으로 착각하여 이탈할 수가 있다.

그렇기 때문에 application.properties에 아래 설정을 통해 처리해준다.

spring.mvc.servlet.load-on-startup=1

 

Comments