일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 프로그래머스
- jquery
- 클래스삭제
- Arrays.sort()
- MSA
- 마이크로서비스아키택처
- 회원가입기능
- 비절차형 언어
- soild
- 빅오표기법
- 향상된 for문
- nat inside
- 의존역적원칙
- 함수지향
- flask
- CORS
- 클래스추가
- 타입오류
- 로그인기능 #
- 의존성주입
- oop 4대 특성
- 객체지향
- 토글기능
- 분산형 아키택처
- 3-Way Handshake
- 4-Way Handshake
- 객체지향 5대 특징
- 배열오름차순정렬
- 멀티프로세스
- AttributeError
- Today
- Total
개발하는 체대생
웹 서버(Web Server)와 WAS(Web Application Server) 본문
질문 : 웹 서버(Web Server)와 WAS(Web Application Server)차이는?
답변 :
웹 서버(Web Server)는 웹 페이지와 같은 정적인 컨텐츠를 제공하는 서버입니다.
대표적인 예로는 Apache, Nginx, IIS 등이 있습니다.
+ 웹 서버 는 정적인 컨텐츠를 처리하기 때문에, HTML, CSS, JavaScript와 같은 파일을 처리하는 데 적합합니다. 또한, 웹 서버는 프로그램 실행에 필요한 환경을 제공하지 않으므로, 웹 서버 자체로는 동적인 컨텐츠를 처리할 수 없습니다.
반면에, WAS(Web Application Server)는 동적인 컨텐츠를 처리하는 데 적합한 서버입니다.
대표적인 예로는 Tomcat, JBoss, WebLogic, WebSphere 등이 있습니다.
+ 애플리케이션 서버는 웹 서버와 달리, 프로그램 실행에 필요한 환경을 제공하며, 다양한 언어와 프레임워크를 지원합니다.
역할
웹 서버는 정적인 리소스(HTML, CSS, JS, 이미지 등)를 제공하는 역할을 주로 수행합니다. 웹 서버는 클라이언트의 요청을 받으면 해당 요청에 맞는 정적인 리소스를 찾아서 반환해주는 것이 주된 역할입니다. 대표적으로 아파치(Apache)와 Nginx가 있습니다.
WAS는 동적인 컨텐츠를 제공하는 역할을 주로 수행합니다. 웹 어플리케이션을 실행하는 미들웨어로, 클라이언트의 요청에 따라 동적으로 결과를 생성하여 반환합니다. WAS는 웹 어플리케이션을 실행하는데 필요한 서비스를 제공하며, 트랜잭션 관리, 보안, 데이터베이스 연동 등 다양한 기능을 수행합니다. 대표적으로 톰캣(Tomcat), 웹로직(WebLogic), 웹스피어(WebSphere) 등이 있습니다.
구성요소
웹 서버는 보통 HTTP 프로토콜을 사용하여 클라이언트와 통신합니다. 웹 서버는 정적인 리소스를 제공하는데 필요한 기능만을 가지고 있으므로, 기본적으로 HTTP 리스너, 웹 서비스, 프록시 서버 등의 기능을 제공합니다.
WAS는 웹 서버에 추가적으로 서블릿 컨테이너, JSP 컨테이너, EJB 컨테이너 등 다양한 컨테이너를 포함하고 있습니다. 서블릿 컨테이너는 클라이언트의 요청을 받아서 서블릿을 실행하는데 필요한 기능을 제공하며, JSP 컨테이너는 JSP 파일을 실행하는데 필요한 기능을 제공합니다. EJB 컨테이너는 분산 객체를 관리하고 트랜잭션 관리 등의 기능을 제공합니다.
확장성
웹 서버는 여러 대의 서버를 로드 밸런싱(Load Balancing)하여 사용할 수 있습니다. 이 방식을 사용하면 서버의 부하를 분산하여 성능을 높일 수 있습니다.
WAS는 여러 개의 서버를 클러스터(Cluster)로 묶어서 사용할 수 있습니다. 클러스터를 사용하면 서버의 부하를 분산하여 성능을높일 수 있으며, 높은 가용성(High Availability)을 제공할 수 있습니다. 또한, WAS는 서블릿 컨테이너, JSP 컨테이너, EJB 컨테이너 등 다양한 컨테이너를 포함하고 있어서 다양한 어플리케이션을 지원할 수 있습니다.
보안
웹 서버는 주로 웹 방화벽(Web Firewall)을 통해 보안을 제공합니다. 웹 방화벽은 HTTP 프로토콜을 분석하여 악성 코드나 공격을 차단하는 기능을 제공합니다.
WAS는 보통 다양한 보안 기능을 제공합니다. WAS는 트랜잭션 관리, 보안, 데이터베이스 연동 등 다양한 기능을 수행하며, 보안 기능도 다양한 수준에서 제공합니다. 예를 들어, 사용자 인증, 인가, SSL/TLS 암호화 등의 기능을 제공할 수 있습니다.
성능
웹 서버는 정적인 리소스를 제공하는데 주로 사용됩니다. 따라서, 웹 서버는 빠른 속도와 높은 처리량을 보장하는 것이 중요합니다. 웹 서버는 여러 대의 서버를 로드 밸런싱하여 성능을 높일 수 있습니다.
WAS는 동적인 컨텐츠를 제공하는데 주로 사용됩니다. 따라서, WAS는 빠른 속도와 높은 처리량 뿐만 아니라, 다양한 어플리케이션을 지원하며, 트랜잭션 관리, 보안, 데이터베이스 연동 등 다양한 기능을 수행할 수 있도록 설계되어 있습니다.
결론
웹 서버와 WAS는 모두 클라이언트로부터 요청을 받아서 처리하는 역할을 수행하지만, 각각의 역할과 구성요소, 확장성, 보안, 성능 등에서 차이가 있습니다.
'취업스터디' 카테고리의 다른 글
절차지향, 객체지향, 함수형 프로그래밍 (0) | 2023.04.05 |
---|---|
Stack, Queue, Array, Linked List (0) | 2023.04.04 |
트랜잭션(Transaction) (0) | 2023.04.03 |
멀티쓰레드(Multi-thread)와 멀티프로세스(Multi-process) (0) | 2023.04.01 |
TCP와 UDP (3-way handshake, 4-way handshake) (0) | 2023.03.31 |