웹 서버와 웹 애플리케이션 서버

이하은·2021년 7월 2일
0

default

목록 보기
4/7
post-thumbnail

웹 서버

WS(Web Server)
웹 브라우저와 같은 클라이언트로부터 HTTP 요청을 받아들이고, HTML 문서와 같은 웹 페이지를 반환하는 컴퓨터 프로그램.
주된 기능은 콘텐츠를 제공하는 것이지만 클라이언트로부터 콘텐츠를 전달 받는 것도 웹 서버의 기능에 속한다
주로 html css js 파일 같은 정적인 데이터를 관리한다.

(Web Server 는 다소 광범위한 용어라서 Hardware 로서의 의미와 Software 로서의 의미를 함께 가지고 있지만, 여기서는 Software로서의 의미만 말한다.)

기능

  • 인증
  • 정적 콘텐츠 관리
  • https 지원
  • 로드밸런싱
    ...

종류

Apache HTTP Server : 폭 넓게 사용되는 전통의 오픈소스 웹 서버. 보안수준이 높다. 많은 기능으로 인해 느리다는 단점이 있다.
Internet Information Services : Microsoft에서 제공하는 웹 서버. Windows Server 시리즈와 같은 OS 제품에 들어 있음. 가격이 비싸고 Windows Server 에서만 동작한다는 단점이 있다.
Nginx : 소비 메모리가 적으며 리버스 프록시와 로드밸런서 기능을 갖추고 있는 오픈 소스 웹 서버.
...등 이 있다.


웹 애플리케이션 서버

WAS(Web Application Server)
웹 애플리케이션 서버는 웹 애플리케이션과 서버 환경을 만들어 동작시키는 기능을 제공하는 소프트웨어 프레임워크이다. 인터넷 상에서 HTTP를 통해 사용자 컴퓨터나 장치에 애플리케이션을 수행해 주는 미들웨어(소프트웨어 엔진)로 볼 수 있다. 웹 애플리케이션 서버는 동적 서버 콘텐츠를 수행하는 것으로 일반적인 웹 서버와 구별이 되며, 주로 데이터베이스 서버와 같이 수행이 된다.
주로 동적인 데이터를 관리한다.

기능

  • 프로그램 실행 환경, DB 접속 기능 제공
  • 여러개의 트랜젝션(논리적 작업단위) 관리
  • 비즈니스 로직 수행

웹 애플리케이션의 구조


종류

apache tomcat(아파치 톰켓), JEUS, WebLogic, IIS, JBOSS 등이 있다.

WS가 WAS 앞단에 있으면 좋은 이유

WAS도 보통 자체적으로 웹 서버 기능을 내장하고 있다. WAS의 초창기에는 WAS의 성능이 부실하여 WS와 같이 썼지만 지금은 WAS만으로 충분하다.
그럼에도 WS가 WAS 앞단에 있으면 좋은 이유는 기능을 분리하여 서버 부하를 방지하기 위해서이다.
WS는 단순한 문지기 역할을 하면서 여러개의 WAS(java서버, C서버, phython서버)를 WS에서 연결해줄 수 있다.
그리고 단순한 정적 페이지는 WAS대신 WS가 반환하는게 자원이 적게 든다.
또 무중단으로 운영하기 위해 중요한 기능이라고 한다.


정적 페이지, 동적 페이지

정적, 동적 이라는 용어는 사용자가 페이지를 요청하는 시점에 페이지의 내용이 유지되는가 또는 변경되는가를 구분하는 용어이다.
즉 동적 페이지에는 프로그래밍 코드가 포함되어 있어서 페이지 요청 시점에 html 문장을 만들어 내는 것이다.


참고

웹 서버 위키백과
웹 어플리케이션 서버 위키백과
웹 어플리케이션 서버 개인 블로그
웹서버 WAS 개인 블로그
WebServer와 WAS차이점(Tomcat과 Apache)

잘못된 부분이 있다면 댓글로 남겨주시면 감사하겠습니다 :)

profile
완벽함보단 꾸준함으로

0개의 댓글