Web 동작 원리

Chae-eun Lee·2022년 11월 22일
0

TIL

목록 보기
2/9

가장 당연한 개념이고 전부터 수업 때에 많이 들었던 얘기지만 오늘은 TIL 첫 날이니 간단하고 가장 중요한 웹의 동작 원리에 대해 정리해보겠다.

웹 동작 원리💻

가장 간단하게 정리해보겠다.
'클라이언트가 서버에 요청을 보내면 서버는 요청에 대한 응답을 보낸다.'

물론 클라이언트와 서버만 존재하는 것은 아니다.
(출처:How Web Works)

웹 클라이언트

웹 클라이언트는 주로 일반적인 사용자를 말한다. 웹에 접근하는 프로그램을 말하는데, 대부분의 웹은 브라우저 내에서 실행되기 때문에 chrome이나 파이어폭스같은 브라우저를 말한다.
즉 결과물을 출력하는 역할을 한다.

웹 서버

앱/웹페이지(사이트) 를 저장하는 공간이다.
클라이언트에서 요청한 HTTP메시지를 읽고 이 요청에 해당하는 응답, 즉 HTML문서나 각종 리소스들을 가져와 클라이언트에게 보내주는 것이다.
웹 서버에는 종류가 있는데 대표적인 것으론 많이 사용하는 Apache(아파치)웹 서버가 있고 NginX도 웹서버의 한 종류이다.

WAS (Web Application Server)

위 설명만 보면 웹 클라이언트와 서버만 있다면 웹은 잘 돌아갈 것만 같은데 WAS란 무엇일까.

브라우저와 DBMS(데이터 베이스 관리 시스템) 사이에서 동작하는 미들웨어이다.

WAS는 왜 필요할까?

클라이언트가 10명 정도라고 생각해보자. 수가 적으니 웹서버와 DB만으로도 서버의 업무처리가 충분히 가능할 것이다.
하지만 클라이언트가 만약 1000명이 넘어간다면? 혹은 100만명.. 1억명으로 그 수가 방대해진다면 어떨까?
아마 서버는 과부하가 걸릴 것이다. WAS는 서버를 도와주는 조력자다.

작동원리

클라이언트에게 요청을 받은 서버는 그 요청에 필요한 페이지의 로직이나 DB연동을 위해 WAS에게 처리를 요청한다. 즉 WAS가 중개역할을 하는 것이다. 웹서버의 할 일을 분배하여 처리하기 때문에 서버의 부담을 줄일 수 있고 (특히 동적 컨텐츠를) 빠른 속도로 처리할 수 있다.

WAS의 종류에는 아파치 톰캣(Apache Tomcat), 레진(Resin)등이 있다.

WAS의 기능 정리

  1. 프로그램 실행 환경과 데이터 베이스 접속 기능을 제공
  2. 여러 개의 트랙잭션을 관리
  3. 비즈니스 로직을 수행
  4. 웹 서버 제공

DB (Data Base)

마지막으로 DB를 살펴보겠다. DB는 정보들을 저장하는 저장소이다.
WAS에서 요청을 보내면 그 요청에 맞는 정보들을 보내준다.
더 자세히 설명해보자면 WAS에서 로직을 수행하다가 DB접근이 필요하면 SQL질의를 통해 데이터를 요청하는 것이다.

(** 웹(WWW)의 동작 원리, How Web Works 두 사이트의 도움을 받아 작성하였습니다.)

profile
풀스택 개발자가 되고싶어

0개의 댓글