<머릿말>
WEB이란 것을 처음접할때 기본지식으로 WEB SERVER 라는 용어를 듣게 된다.
자주 들어보던 용어긴 하지만 대체 WEB SERVER 란 것이 뭘까?
SERVER 라는 말 그대로 무언가를 제공하는 녀석이라고 생각하면
그렇다면 대체 무엇을 제공해 주는 것 일까?
이 WEB SERVER 라는것은 우리에게 광고,게시글,실시간 검색어 등 컨텐츠를 제공하게 된다.
WEB SERVER 는 일반적으로 3단계로 이루어져 있다.
WEB SERVER - WAS(Web Application Server) - DB
오늘은 이 3단계의 기본적인 구조에 대해서 간단히 알아 볼 것이다.
<WEB SERVER 란?>
일반적으로 WEB SERVER 란 정적인 페이지를 제공한다고 생각하면 쉽다.
정적인 페이지라 함은 우리눈으로 보이는 페이지 화면 즉 프론트 엔드 개발에서 다루는 부분이 이 부분이다.
기본적으로 언어는 HTML , CSS , Javascript 등이 있으며 페이지에 보여지는 부분을 담당한다.
<WAS란 무엇인가?>
WAS 란 동적인 페이지를 제공하는 역할을 합니다.
여기서 동적인 페이지라 함은 로그인 인증방식,게시글 작성 등 그냥 보여지는 페이지가 아닌 동적인 동작을 담당합니다.
언어로는 PHP,NODE.js,python,javascript 등이 있습니다. (javascript 는 이중적인 성격을 지닙니다..이중적인 녀석..)
음.........
근데 여기서 의문이 하나 생깁니다.
동적인 페이지로 구성이 가능하다면 왜 굳이 정적인 페이지를 사용하는거지?
그냥 동적 언어로 다 만들어 버리면 되지 않을까? 그러니깐...javascript 로 전부 만들어 버릴수 있지 않나?
하지만 web server 와 WAS 를 분리시켜놓은 이유는 동적인 페이지가 동작하는동안 정적인 페이지 까지 제공하려면 과부하가 오기때문에 분업을 시켰다고 보시면 이해되실것 같습니다.
각 사람마다 특기가 다르거니와 한사람한테 일을 몰아서 시키면 뭐든지 과부화가 오기 마련입니다.
특기에 맞게,분업으로 부하를 낮춰서 진행해야 웹 서버의 콘텐츠 제공이 이루어집니다.
<DB의 용도>
저희가 웹 사이트를 이용하다보면 로그인 , 게시물을 작성 , 이미지를 올리기 등 여러 동적인 동작들을 합니다.
그런데 이 과정에서 드는 의문이 있습니다...
"내 ID,PASSWORD 와 게시물내용 ,이미지 파일은 어디에 저장이 되는걸까?"
위에서 정적,동적인 페이지를 제공한다 했지만 그건 동작일뿐 저희의 이런 데이터 들이 저장되는곳이 있기 마련입니다.
이를 위해 필요한것이 DB(Database) 입니다!
대표적으로 DB 에는 MYSQL 이 있습니다.(그외로 ORACLE, DBeaver , mongoDB 등등)
마지막으로 웹 서버의 동작을 예시를 들어보자면
- WEB SERVER 에서 정적인 페이지를 제공함.
- 클라이언트가 로그인을 시도함.
- WAS 가 로그인 인증절차를 위해 로직을 실현
- DB에 있는 ID,PASSWORD 정보를 가져옴.
- WAS는 DB에서 가지고온 식별정보로 인증절차를 진행
- 인증이 완료되면 내부페이지로 접속이 됨
긴 글 읽어주셔서 감사합니다!
'WEB 지식' 카테고리의 다른 글
SOP & CORS 가 뭘까? (0) | 2024.07.12 |
---|---|
Cookie(쿠키) 및 Session(세션) 이란? (0) | 2024.06.07 |