톰캣을 "스프링 부트가 띄워주는 무언가" 정도로 아는지, 요청 처리 흐름과 생명주기까지 잡는 사람인지를 가른다.
Tomcat은 HTTP 요청을 받아 서블릿 컨테이너 규약에 따라 서블릿을 실행하고 응답을 반환하는 WAS다. 커넥터(NIO/APR)가 소켓을 받아 스레드풀의 워커에 요청을 넘기면, URL이 서블릿 매핑과 연결되고 필터 체인을 거쳐 service/doGet/doPost로 흘러간다. 서블릿 생성(init), 요청 처리(service), 종료(destroy) 생명주기는 컨테이너가 책임진다. 즉 애플리케이션 코드와 HTTP 런타임 사이를 중재하는 실행 엔진이다.
스레드풀 maxThreads를 잘못 잡아 커넥션 큐가 길어진 적이 있다면 어떤 지표로 발견하고 조정했는지 연결할 수 있다
필터 등록 순서 때문에 인증/로깅이 어긋난 경험이 있다면 컨테이너 흐름 이해로 어떻게 풀었는지 후크로 쓸 수 있다
내장 톰캣과 외부 WAS 배포를 둘 다 운영해본 적이 있다면 운영 부담 차이로 답할 수 있다
아직 공개된 답변이 없어요. 첫 공개 답변을 남겨보세요.