본문 바로가기
카테고리 없음

웹 서버 (Web Server)와 웹 어플리케이션 서버 (Web Application Server)의 차이점은 무엇인가요?

by Node.js 주니어 개발자 귤 2023. 5. 25.

웹 서버란?

 - 웹서버는 하드웨어, 소프트웨어 혹은 두개가 같이 동작하는 것을 의미할 수 있습니다.

 

 - 소프트웨어 측면: 웹 서버는 HTTP와 같은 프로토콜을 통해 넘어온 클라이언트의 요청에 HTML과 같은 웹 페이지로 응

   답 하는 소프트웨어다. 대표적인 예로 nginx, apach가 있다. 이 소프트웨어들은 호스팅하고 있는 서버(컴퓨터)에서 웹

   페이지의 컴포넌트 파일들(html, image, css, javascript)에 어떻게 접근하는지를 관리한다.

 

 - 하드웨어 측면: nginx나 apach와 같은 소프트웨어가 실제로 동작하고, 웹 페이지의 데이터를 실제로 저장하는 서버

   (컴퓨터)를 의미한다. 웹 서버는 인터넷에 연결되어 IP주소로 식별되고, 이 주소를 통해 클라이언트와 연결된다.

 

 

웹 어플리케이션 서버란?

 - 정적인 HTML페이지만 다루는 웹 서버는 어플리케이션 서버(Application Server)가 필요 없다. 하지만 다이나믹하게

   클라이언트의 요청을 처리해주어야 하는 웹 사이트의 경우에는 Wep Application이 동작하는 Application Server가

   필요하 다. 물론 한 서버 내에서 웹 서버와 웹 어플리케이션이 같이 동작하는 경우도 있기 때문에 하드웨어 측면에서

    Application Server와 Wep Server를 구분짓기 보다는 소프트웨어 측면에서 Wep Server와 Wep Application의

   차이를 이해하는 것이 더 중요하다.

 

 - Application Server는 웹 서버와 데이터베이스 사이에서 동작하는 서버를 의미한다. Application Server에는 Wep

   Application이 동작하고 있다. 여기서 Wep Application이란 우리가 흔히 사용하는 Python, Javascript, Go와 같은

  프로그래밍 언어로 구현되며, Runtime Libraries 그리고 Database Connector, Wep Server Connector를 활용해

  웹서버 뒤에서 실제 클라이언트의 요청을 처리해주는 역할을 맡는 프로그램을 의미한다.

 

 

웹 서버와 웹 어플리케이션 서버의 차이점

 - 웹 서버는 정적인 컨텐츠를 제공하는 역할을 하며 웹 어플리케이션 서버는 동적인 웹 어플리케이션을 실행하기 위한

   기능을 제공하는 역할한다. 일반적으로 웹 서버와 웹 어플리케이션 서버는 함께 사용되어 클라이언트의 요청을 받아

   처리하고 동적인 컨텐츠를 생성하여 제공하는 웹 어플리케이션 환경을 구성한다.