본문 바로가기

프로그래밍 언어 (プログラミング言語)/JAVA

서블릿(Servlet, Feat. Tomcat)

JAVA 진영에서의 WAS : 서블릿 기능의 지원 여부


서블릿 : 아래의 초록색을 제외한 모든 기능들을 전부 지원
-> Tomcat과 같은 WAS는 서블릿을 지원

서블릿 컨테이너 : Tomcat과 같이 서블릿을 지원하는 WAS(JAVA 한정)

서블릿 객체
서블릿 컨테이너인 TOMCAT이 서블릿 객체를 싱글톤으로 등록/관리
서블릿 컨테이너인 Tomcat은 서블릿 객체의 생성->초기화->호출->종료의 생명주기 관리

* JSP도 서블릿 객체로 변환 되어서 사용

 

제일 중요한 것은 서블릿을 지원하는 Tomcat과 같은 WAS는 동시 요청을 위한 멀티 쓰레드 처리를 자동 지원한다. 

-> 결론은 말하면 그냥 "Thread Pool"을 만들어 놓아서 멀티 쓰레딩을 지원하는 것에 불과하다. 

만약 위 그림과 같이 쓰레드가 없는 상태에서 요청을 받은 경우

Waiting 큐를 만들어서 요청 대기 개수에 제한을 걸어서 대기시킬 수도 있고, 거절할 수 있게 세팅할 수가 있다고 한다. 

(TOMCAT의 디폴트 값은 쓰레드 200개이며, 이건 변경이 가능하다)