Choi Kyeong Min Report
정적페이지 vs 동적페이지
정적 페이지
- 저장된 그대로 사용자에게 전달되는 웹 페이지입니다.
- 서버에 저장된 데이터가 변경되지 않는 한 사용자는 고정된 웹 페이지를 보게 됩니다.
- 정적 웹 페이지들은 업데이트를 전혀 하지 않거나 거의 할 필요가 없는 내용에 적절합니다.
- 저장된 데이터만 보여줄 수 있어 서비스가 한정적입니다.
- 삽입/수정/삭제 등의 작업이 모두 수동적이므로 관리가 힘듭니다.
동적 페이지
- 서버가 사용자의 요청에 대하여 데이터를 가공한 후 생성되는 웹 페이지입니다.
- 사용자의 상황, 시간, 요청 등에 따라 달라지는 웹 페이지를 보게 됩니다.
- 같은 페이지라도 사용자마다 다른 결과의 웹 페이지를 볼 수 있습니다.
- 웹 사이트의 구조에 따라 삽입/수정/삭제 등의 작업이 용이 합니다.
- 정적 페이지에 비해 속도가 느립니다.
차이점
- 정적 페이지
- 웹 서버만 있으면된다.
- 저장되어있는 것을 보여주기때문에 속도가 빠르다.
- 동적 페이지
- 웹 서버 + 웹 어플리케이션 서버가 필요하다.
- 정적 페이지에 비해 많은 메모리를 소비하여 속도가 느리다.
웹 서버
- 웹 클라이언트의 요청을 받아서 요청을 처리하고 그 결과를 웹 클라이언트에게 응답한다.
- HTML, CSS, JS(JavaScript), 이미지를 웹 클라이언트에게 제공할때 사용한다.
- 웹 브라우저와 같은 클라이언트로부터 HTTP요청을 받아들이고, HTML 문서와 같은 웹 페이지를 반환한다.
웹 애플리케이션 서버(Web Application Server, WAS)
- 웹 애플리케이션과 서버 환경을 만들어 동작시키는 기능을 제공하는 소프트웨어 프레임워크이다.
- 아파치 톰캣(Apache Tomcat), 레진(Resi), 제이런(JRun) 등이 있다.
- 영어권에서는 Application Server 약자 AS로 불린다.
- 웹 서버로부터 동적 페이지를 요청받아 요청을 처리하고 그 결과를 웹서버로 보여준다.
<애플리케이션 서버 방식의 요청 처리>
- 웹 애플리케이션 서버를 통해서 간접적으로 웹 애플리케이션 프로그램을 실행한다.
- 웹 애플리케이션 서버는 애플리케이션 프로그램의 실행 결과를 웹 서버에 전달해주며, 웹 서버는 웹 애플리케이션 서버로부터 전달받은 응답 결과를 웹 클라이언트에 전송한다.
<애플리케이션 서버 방식에서의 서버 간 구성도>
Web Server와 Web Application Server(WAS)를 구분하는 이유
- WAS는 DB 조회나 다양한 로직 처리를 담당하고 단순한 정적 컨텐츠는 Web Server에서 제공하도록 기능을 분리하여 서버 부하 방지의 효과가 있습니다.
- SSL에 대한 암복호화 처리에 Web Server를 사용하여 물리적으로 분리하여 보안 강화할 수 있습니다.
- 특히 대용량 웹 어플리케이션의 경우(여러 개의 서버 사용) Web Server와 WAS를 분리하여 장애 극복에 쉽게 대응할 수 있고 무중단 운영을 가능하게 합니다.
결론
- 자원 이용의 효율성 및 장애 극복, 배포 및 유지보수의 편의성 을 위해 Web Server와 WAS를 분리합니다.
- Web Server를 WAS 앞에 두고 필요한 WAS들을 Web Server에 플러그인 형태로 설정하면 더욱 효율적인 분산 처리가 가능합니다.
서브목차