웹(Web)의 동작 원리

Jiwon Jung·2024년 11월 1일

스프링(Spring)

목록 보기
1/20

웹의 동작 원리를 한 줄로 표현하면,
"클라이언트가 서버에 요청을 보내면, 서버는 요청에 대한 응답을 한다." 이다.

이번 포스팅에선 웹(Web)의 동작 원리에 대해 알아본다.


📖 웹(Web) 용어 정리

🔎 Web Client

  • 사용자 대신 요청을 보내는 프로그램
  • 클라이언트는 사용자로부터 받은 URL에 대한 정보를 찾아서 HTTP 메세지 형태로 서버에게 요청 (HTTP Request)
  • ex) Chrome, Firefox 같은 웹 브라우저

🔎 Web Server

  • 정적 리소스를 직접 제공하는 프로그램
  • 클라이언트가 웹 브라우저를 통해 요청한 정적 콘텐츠를 제공하는 역할
  • 클라이언트에서 요청한 HTTP 메세지를 확인한 후 HTML, CSS, Image 등의 데이터를 처리하여 클라이언트에게 응답 (HTTP Response)
  • ex) Apache Web Server 등

🔎 Web Application Server(WAS)

  • 동적 요청을 처리하고 서버 측 로직을 수행하는 프로그램
  • WAS를 실행하여 동적 콘텐츠(게시물 작성, 수정 등)를 생성하고, 웹 서버와 클라이언트 간의 데이터 처리 담당
  • WAS는 클라이언트의 요청에 따라 DB에서 정보를 가져오거나, 웹 애플리케이션을 실행하여 동적인 웹 페이지를 생성한 후 결과를 웹 서버에 전달
  • 클라이언트에게 메세지를 받으면 서버는 요청에 필요한 로직이나 데이터베이스의 연동을 위해 WAS에게 요청, 연동하여 얻은 데이터를 다시 서버에게 반환
  • ex) Apache Tomcat, IIS 등

🔎 Database(DB)

  • 데이터를 저장하는 공간
  • WAS에서 데이터를 요청하면 필요한 데이터를 응답
  • WAS에서 로직을 수행하다가 데이터를 받아와야 하는 작업이 생기면, SQL 질의를 통해 DB에 접근

📖 웹(Web) 동작 순서

  • 사용자가 웹 브라우저의 검색창에 찾고 싶은 웹 사이트의 URL 주소를 입력하여 접속

  • 웹 브라우저가 DNS(Domain Name System)에게 사용자가 입력한 사이트의 도메인 주소 요청

  • DNS 서버에서 해당 도메인 네임에 해당하는 IP 주소를 응답

  • 웹 브라우저가 웹 서버에게 IP 주소를 이용하여 HTML 문서를 요청 (HTTP Request)

  • 웹 서버는 바로 웹 페이지를 공급하지 못하고, WASDB에서 웹 페이지 작업을 처리

  • 작업 처리 결과를 웹 서버로 전송

  • 웹 서버는 웹 브라우저에게 HTML 문서 결과를 응답 (HTTP Response)

  • 웹 브라우저는 화면에 웹 페이지를 출력


📖 참고 자료

https://swimjiy.github.io/2019-11-03-How-Web-Works

0개의 댓글