본문 바로가기
기술 단어장/Network

[통신이론] 서블릿(Servlet)의 역할, 특징

by MFDO 2023. 5. 31.

 

 

서블릿(Servlet)

: 자바 기반 서버 사이드 웹 애플리케이션 개발을 위한 자바 클래스

 

- 서블릿의 역할

HTTP
요청 처리
- 클라이언트에게 HTTP 요청을 받아 처리
- 데이터 추출 및 처리
동적 컨텐츠 생성 클라이언트에게 동적으로 생성된 HTML, XML, JSON 등의 컨텐츠 반환
세션 관리 클라이언트와의 세션 관리 및 상태정보 유지
DB 접근 DB와 연동하여 검색, 수정, 저장 가능

 

- 서블릿의 특징

동적 처리 클라이언트의 요청에 동적으로 응답을 생성
ex) DB정보 조회, 계산 결과 HTML, JSON
플랫폼 독립성 자바 기반이라 플랫폼(OS) 제약이 적음
생명 주기 관리 서블릿 컨테이너로 관리되는 생명주기 존재
초기화(init), 처리(service), 파괴(destroy)
다중 스레드 처리 다중 스레드 환경에서 동작함
클라이언트마다 별도 스레드 제공
세션 관리 상태정보 유지, 데이터 지속성 보장
사용자식별, 인증, 상태 추적 등 가능
확장성 다른 자바 기술과의 통합이 용이
ex) JSP, Filter, Listener 등

 

- 서블릿 컨테이너 : 서블릿에 대한 관리 수행

> servlet 생명 주기 관리

> 클라이언트에게 적절한 Servlet 전달

 

* 동적인 응답? : 요청에 따라 데이터를 처리해 결과를 동적으로 생성

* 정적인 응답? : 저장된 파일, 리소스를 그대로 전달

 

+ 서블릿 컨테이너 : https://velog.io/@han_been/%EC%84%9C%EB%B8%94%EB%A6%BF-%EC%BB%A8%ED%85%8C%EC%9D%B4%EB%84%88Servlet-Container-%EB%9E%80

 

+ 웹서버와 웹애플리케이션의 분리 개념 :

https://velog.io/@gillog/Web-Server%EC%99%80-Web-Application-Server%EC%9D%98-%EC%B0%A8%EC%9D%B4

 

 

댓글