끵뀐꿩긘의 여러가지

[부스트코스] 웹 프로그래밍 - 4. 웹서버&WAS 본문

부스트코스 - 웹/1. 웹 프로그래밍 기초

[부스트코스] 웹 프로그래밍 - 4. 웹서버&WAS

끵뀐꿩긘 2020. 2. 5. 21:27

귀여운 펭귄입니다.

작년 갑자기 서버에 대한 관심이 생겨서 서버에 최적화 되어있다고 평가받는 리눅스를 공부하게 되었습니다. 깊이 있게 다루지는 못했지만 웹서버를 만들고 웹을 못 만들어서 조잡한 웹페이지를 보면서 우울했던 기억이 있습니다. ㅎㅎ

이번 부스트코스 웹 프로그래밍에 힘입어서 근사한 웹과 웹서버를 만들어보고 싶다는 생각이 마구 듭니다.

 


웹 서버란?

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

웹브라우저는 https://kkwong-guin.tistory.com/6에서 같이 알아보았습니다.

웹 크롤러란 조직적, 자동화된 방법으로 WWW을 탐색하는 컴퓨터 프로그램입니다. 구글이나 네이버에 검색하면 이 웹크롤러들이 검색어를 탐색하여 우리들에게 알려줍니다.

 

웹 서버 소프트웨어의 종류

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

저는 아파치로 배웠는데 Nginx가 더 좋다고 합니다..ㅠㅜ

 

 

DBMS (DataBase Management System) & 미들웨어 (MiddleWare)

 

클라이언트-서버는 클라이언트(Client)는 서비스(Service)를 제공하는 서버(Server)에게 정보를 요청하여 응답 받은 결과를 사용하는 구조를 갖추고 있습니다. 인터넷이 발전하면서 복잡하고 많은 정보를 손쉽게 정리할 수 있는 DBMS, 다수의 사용자가 데이터베이스 내의 데이터에 접근할 수 있도록 해주는 소프트웨어가 등장했습니다. 하지만, 클라이언트가 직접 DBMS 서버에 접속하는것은 클라이언트 관리(배포 등)로 인해 비용이 많이 발생하는 문제가 있습니다. 이러한 문제들을 해결하기 위해 미들웨어라는 중간 서버를 두어 클라이언트의 부담을 덜어주고 입출력만 담당하도록 합니다.

 

미들웨어 , DBMS

WAS (Web Application Server)

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

 

웹 서버 vs WAS

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

 

부스트코스 강좌:https://www.edwith.org/boostcourse-web/lecture/16665/

부스트코스 강좌:https://www.edwith.org/boostcourse-web/lecture/16666/

 


이제 웹 프로그래밍의 기초 이론은 끝났습니다. 다음 시간부터 웹 프로그래밍 실전으로 넘어갑시다! 화이팅!

 

Comments