부스트코스 - 웹 프로그래밍(풀스택) - 04 [Web개발의 이해 - FE/BE]

FFTL:)·2021년 7월 8일
0
post-thumbnail

6) 웹서버

웹 서버는 소프트웨어를 보통 말하지만, 웹 서버 소프트웨어가 동작하는 컴퓨터를 말합니다. 웹 서버의 가장 중요한 기능은 클라이언트가 요청하는 HTML문서나 각종 리소스를 전달하는 것입니다. 웹 브라우저나 웹 크롤러가 요청하는 리소스는 컴퓨터에 저장되어 있는 정적 (static)인 데이터이거나 동적인 결과가 될 수 있습니다.

  • 웹 브라우저는 웹 서버에 웹 페이지를 요청하고, 웹 서버는 이 요청에 응답을 해줍니다.
  • 웹 브라우저의 요청을 통해서 웹 서버가 보내준 응답 데이터들을 하나로 합쳐서 화면에 보여주는 것을 랜더링 한다라고 표현합니다.

웹 서버 소프트웨어의 종류

  • 가장 많이 사용하는 웹 서버는 Apache, Nginx, Microsoft, Google 웹 서버가 있습니다
  • Apache웹 서버는 Apache Software Foundation에서 개발한 웹 서버로 오픈소스 소프트웨어이며, 거의 대부분의 운영체제에서 설치 및 사용이 가능합니다. Nginx는 차세대 웹 서버로 보통 불리며 더 적은 자원으로 더 빠르게 데이터를 서비스하는 것을 목적으로 만들어진 서버이며 Apache웹 서버와 마찬가지로 오픈소스 소프트웨어 입니다.

6) WAS(Web Application Server)

DBMS(DataBase Management System)

다수의 사용자가 데이터베이스 내의 데이터에 접근할 수 있도록 해주는 소프트웨어입니다.

미들웨어(MiddleWare)

  • 클라이언트 쪽에 비즈니스 로직이 많을 경우, 클라이언트 관리로 인해 비용이 많이 발생하는 문제가 있습니다.
  • 비즈니스 로직을 클라이언트와 DBMS사이의 미들웨어 서버에서 동작하도록 함으로써 클라이언트는 입력과 출력만 담당하도록 합니다.

WAS(Web Application Server)

WAS는 일종의 미들웨어로 웹 클라이언트(보통 웹 브라우저)의 요청 중 웹 애플리케이션이 동작하도록 지원하는 목적을 가집니다.

웹 서버 vs WAS

  • WAS도 보통 자체적으로 웹 서버 기능을 내장하고 있습니다.
  • 현재는 WAS가 가지고 있는 웹 서버도 정적인 콘텐츠를 처리하는 데 있어서 성능상 큰 차이가 없습니다.
  • 규모가 커질수록 웹 서버와 WAS를 분리합니다.
  • 자원 이용의 효율성 및 장애 극복, 배포 및 유지보수의 편의성을 위해 웹서버와 WAS를 대체로 분리합니다.
profile
생각하는 개발자가 되자!

0개의 댓글