CGI (Common Gateway Interface)
- 웹서버와 애플리케이션 사이에 데이터를 주고받는 규약
- CGI 규칙에 따라서 만들어진 프로그램을 CGI 프로그램 이라고 함
- CGI 프로그램 종류로는 컴파일 방식(C, C++, Java 등)과 인터프리터 방식(PHP, Python 등)이 있음
Servlet (Server + Applet 의 합성어)
- 자바에서 웹 애플리케이션을 만드는 기술
- 자바에서 동적인 웹페이지를 구현하기 위한 표준
Servlet Container
- 서블릿의 생성부터 소멸까지의 '라이프사이클'을 관리하는 역할
- 서블릿 컨테이너는 웹 서버와 소켓을 만들고 통신하는 과정을 대신 처리해준다. 개발자는 비즈니스 로직에만 집중하면 된다.
- 서블릿 객체를 싱글톤으로 관리 (인스턴스 하나만 생성하여 공유하는 방식)
-> 싱글톤 객체에서 상태를 유지(stateful)하게 설계하면 안됨
-> (동기화 처리가 안된 경우일 때) Thread safety 하지 않음
동기화 처리로 해결 가능
WAS vs 서블릿 컨테이너
- WAS는 서블릿 컨테이너를 포함하는 개념
- WAS는 매요청마다 스레드 풀에서 기존 스레드를 사용함
- WAS의 주요 튜닝 포인트는 max thread 수 설정
- 대표적인 WAS로 톰캣이 있다.
'공부내용 정리 > 프로그래밍' 카테고리의 다른 글
DBCP, DataBase Connection Pool 개념 정리 (1) | 2023.10.27 |
---|---|
[패스트캠퍼스강의] 게시판 서비스 프로젝트 #2 (0) | 2023.10.25 |
[패스트캠퍼스강의] 게시판 서비스 프로젝트 #1 (0) | 2023.10.25 |
.gitignore 파일 만들기 (0) | 2023.10.25 |
동기(sync)와 비동기(async)의 개념과 차이 (0) | 2023.10.18 |