본문 바로가기

Tech/BoostCourse - WEB

[부스트 코스] 웹서버

들어가기 전에

웹 브라우저를 실행한 후 주소 입력창에 URL 주소를 입력하면, 그 URL주소에 해당하는 결과물이 화면에 보입니다.

우리가 현실에서 주소를 보고 집을 찾아가는 것처럼, 웹 브라우저는 URL 주소에 해당하는 웹서버(Web Server)에 연결하고, 해당 주소에서 볼 수 있는 내용을 읽어 들여 보여주게 됩니다.

웹 브라우저의 요청을 받아 HTML 문서나 오브젝트를 반환하는 웹 서버에 대하여 알아보도록 하겠습니다.

 

 

웹 서버란?

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

* 정적인 데이터 :  보통 이미지, HTML 파일, CSS 파일, JavaScript 파일과 같이 컴퓨터에 저장되어 있는 파일들을 의미

* 동적인 결과 :  웹 서버에 의해서 실행되는 프로그램을 통해서 만들어진 결과물

* 웹 크롤러 :  네이버나 구글 같은 검색 사이트에서 다른 웹사이트 정보를 읽어갈 때 사용하는 소프트웨어

 

웹 브라우저와 웹 서버

  • 클라이언트와 웹 서버 간에는 보통 HTTP를 통해서 통신
  • URL 주소가 HTTP로 시작되는 것은 HTTP를 사용한다는 의미

 

* HTTP(Hypertext Transfer Protocol) :  인터넷상의 데이터를 주고받기 위한 프로토콜. 프로토콜은 규약이라는 의미도로에서 빨간 불에서 멈추고 파란 불에서 움직이는 등 교통 규칙에 의해서 움직이기 때문에 큰 문제가 생기지 않음. 마찬가지로 클라이언트와 서버도 미리 정해놓은 규칙을 가지고 통신을 해야만 제대로 통신이 가능하다. 이렇게 서로 정해놓은 규칙들을 프로토콜이라고 함.

 

 

[참고] https://bellog.tistory.com/18

 

[부스트코스] 웹 프로그래밍 기초 - 웹의 동작(HTTP 프로토콜의 이해)

부스트코스 서포터즈 BOOSTER 2기에 도전합니다. 평소 개발 공부할 때 하향식 공부법(응용에서 초급 지식을 학습)을 선호해왔다. 그러다보니 기본이 흔들리는 것이 당연해졌다. 그동안 골다공증 마냥 슝슝 뚫려버..

bellog.tistory.com

 

웹 서버 소프트웨어의 종류

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

2017년도 기준으로 전 세계 웹 서버 시장 점유율을 보면 Apache 서버가 단연 1등이지만

Nginx의 성장세를 살펴보면 2007년 이후부터 굉장히 가파르게 성장곡선을 보이고 있음.

 

* 오픈소스 소프트웨어 : 소스 코드를 공개해 누구나 특별한 제한 없이 그 코드를 보고 사용할 수 있는 오픈 소스 라이선스를 만족하는 소프트웨어를 말한다.(위키 백과)

 

[관련 부스트코스 강의 링크] https://www.edwith.org/boostcourse-web/lecture/16665/

 

 

반응형