WEB 서버
웹서버란 크게 두가지 측면으로 나눌 수 있다.
- 하드웨어 : 웹사이트의 정적 컴포넌트 파일을 저장한다 (html, css, javascript). 또한 요청에 맞게 해당 파일들을 건내준다.
- 소프트웨어 : 클라이언트로부터 HTTP 요청을 받아들이고, 해당 파일에 어떻게 접근하는지를 관리한다.
WAS
WAS 란 (Web Application Server) 의 약자로, 인터넷 상에서 HTTP 를 통해 클라이언트 장치에 애플리케이션을 수행해주는 미들웨어이다.
웹 서버와 웹 컨테이너를 합친 구조이며, 보통 동적 서버 콘텐츠를 수행함으로서 WEB 서버와는 구분된다.
또 데이터베이스 서버와 함께 수행된다.
차이점
구조상 다른 점은 웹 컨테이너의 유무이다.
WEB 서버는 HTML 문서와 같은 정적 컨텐츠를 처리한다.
반면 WAS 는 jsp, php 등 개발언어를 컴파일하여 동적 컨텐츠, 웹 응용 서비스를 처리한다.
또한 목적이 다르다.
WEB 서버는 앞서 말했듯이 정적 데이터를 처리하는 서버이다.
반면 WAS 는 동적인 데이터를 처리한다. 데이터베이스와 연결되어 데이터를 주고받거나, 데이터 로직이 필요한 경우에 WAS 를 활용한다. 단순한 정적파일을 WAS 를 통해 올리면 비효율적이다. ( 보안, 처리량 )
보통의 우리가 개발하는 웹페이지는 WAS, WEB 서버 모두 사용한다.
웹서버에서 정적 처리를 진행하며, WAS 서버에서 동적컨텐츠를 처리한다.
apache
아파치 재단에서 후원하는 오픈소스 프로젝트 커뮤니티에서 만들어진 HTTP WEB Server 이다.
클라이언트의 요청에 따라 해당 서버가 어떤 어떤 결과를 돌려주는 등과 같은 역할을 한다.
1996년 이후로 웹서버 부분 1등을 유지하고 있다고 한다.
nginx
차세대로 떠오르는 웹서버이다.
더 적은 자원으로 효율적으로 성능을 낼 수 있다고 한다.
자세한 건 사용할 때 더 공부해야할 거 같다.
tomcat
웹 서버와 웹 컨테이너의 결합으로 다양한 기능을 컨테이너에 구현하여 많은 역할을 수행할 수 있는 WAS 이다.
클라이언트의 요청이 들어오면, 내부의 로직을 통해 다른 결과를 도출해내고 이를 다시 클라이언트에게 전달해주는 역할을 한다.
'개인 공부 > 전공 지식 정리' 카테고리의 다른 글
[Datebase] index 원리 (B+ Tree) (2) | 2022.11.08 |
---|---|
[Socket] WebSocket 이란 ? (0) | 2022.07.05 |
[Socket] Http 통신과 Socket 통신의 차이점 (0) | 2022.07.04 |
[Git] Git - 기초 키워드 정리 (0) | 2022.01.30 |