Web Sever
: 클라이언트가 웹 브라우저에서 HTTP 프로토콜 기반의 요청을 하면,
그 요청을 받아서 정적 컨텐츠를 제공하는 서버
*정적 컨텐츠? 단순 HTML 문서, CSS, 이미지, 파일 등 즉시 응답 가능한 컨텐츠
컴퓨터는 웹서버에게
“데이터 혹은 어떤 파일을 달라” 고 하고
웹서버는 그것을 응답해준다
즉, 컴퓨터는 웹서버하고만 통신한다
웹 서버는 정말 단순함
역할이 뭐냐,
A파일을 달라고 컴퓨터가 요청하면
웹 서버는 A파일이 어디있는지 찾고 그 파일을 준다
🤔 웹 서버가 정적 컨텐츠가 아니라 동적 컨텐츠 요청을 받는다면?
WAS에 해당 요청을 넘겨주고, WAS에서 처리한 결과를 컴퓨터에 전달한다
결론
1. 정적 컨텐츠 제공
2. 동적 컨텐츠 요청을 전달
ex ) NginX, Apache
WAS(Web Application Server)
: HTTP 프로토콜을 기반으로 동적 컨텐츠를 제공하고, 사용자 컴퓨터에 애플리케이션을 수행해주는 미들웨어
ex ) Tomcat, JBoss, WebSphere
네이버를 쓰는 이용자는 셀 수 없이 많다
그럼 네이버 페이지도 그 수에 맞춰서 셀 수 없이 많지는 않을 것이다
네이버는 하나의 페이지를 만들어놓고
페이지의 이름만 바꾸면 되는 것
기존에 파일을 갖다주는 것이 아닌
지금 들어온 사람의 이름에 따라 응답
웹 서버를 구축한다 == 웹 프로그램을 웹 서버에 올린다
WAS는 웹 서버가 넘긴 일을 처리하고 응답한다
WAS는 DB와도 소통하기도 한다 == SQL
로그인 한다고 생각해보자
- 컴퓨터에서 Web Sever로 로그인 요청
- Web Server는 WAS에 ID, PW를 보낸다
- WAS는 DB에 있는 데이터를 가져와서 비교한다
- WAS는 로그인 성공 페이지, 로그인 실패 페이지를 만든다
- Web Sever가 페이지 응답을 보낸다
WAS의 기능?
- 웹 서버의 기능들을 구조적으로 분리하여 처리한다
- 프로그램 실행 환경, DB 접속 기능 제공
- 여러 트랜잭션 관리 기능
'개발일지 > Spring' 카테고리의 다른 글
[Server] ERD(Entity Relationship Diagram) (0) | 2023.12.13 |
---|---|
[Server] 시스템 콜(System Call) (0) | 2023.10.03 |
[AWS] AWS에 대하여 (0) | 2023.10.02 |
[Spring] 스프링 입문 - AOP (0) | 2023.10.01 |
[Spring] 스프링 입문 - JPA (0) | 2023.10.01 |