참고
웹서버와 WAS: https://yozm.wishket.com/magazine/detail/1780/
정적?동적?웹사이트 화면은 어떻게 채워질까? https://yozm.wishket.com/magazine/detail/2817/
클라이언트가 HTTP 요청을 하면 HTTP 응답을 전달 해주는 역할
예를 들어 사용자가 상품상세 페이지를 요청하면 HTML 문서와 같은 정적인 콘텐츠를 사용자에게 전달한다.
웹 서버의 종류 : Apache, Nginx등
웹 서버와 동일하게 HTTP 기반으로 동작한다.
웹 서버에서 할 수 있는 기능 대부분 + 비즈니스 로직를 처리 가능
사용자에게 동적인 콘텐츠를 전달할 수 있다
즉 WAS는 동적인 요청을 받아 처리해 주는 서버다.
대표적인 WAS 종류 : Tomcat, JBoss 등
웹 서버는 정적인 데이터를 처리하는 서버, WAS는 동적인 데이터 위주로 처리하는 서버
웹 서버는 WAS만을 이용할 때보다 빠르고 안전정인 기능을 수행한다.
WAS는 DB와 연결되어 사용자와 데이터를 주고 받고 조작이 필요한 경우 WAS를 활용한다.
변경되지 않는 데이더
메모리에 고정된 위치에 할당
ex) 상수, 정적 파일(프로그램 시작 시에 한 번만 로드되는 데이터 파일)
변경 가능한 데이터
동적으로 메모리가 할당(필요에 따라 크기가 변경)
실시간으로 업데이터 되거나 변경되는 데이터
ex) 배열, 데이터베이스
HTML 파일을 그대로 제공하는 개념
틀만 만들어놓고 요청에 따라 서버가 내용을 채워 매번 새로운 HTML을 제공
EX) 유튜브에서 사용자 별로 알고리즘에 맞춰 다른 영상들이 채워지는 것
처음에는 일부 데이터만 보여주고 그후 필요한 데이터만 추가로 서버에 요청하는 것도 동적 웹페이지라고 한다
이때 데이터를 클라이언트에서 채우는지 혹은 서버가 채우는지에 따라 클라이언트 사이드 동적 웹 페이지, 서버 사이드 동적 웹 페이지로 나뉜다.