Static Web Page(정적 웹 페이지)란?
사용자(User)가 요청에 웹 서버에 저장된 컨텐츠들(이미지, JavaScript 등등..)을 가공없이 나타내는 웹 페이지
정적 웹 페이지는 프론트 엔드에서 사용하는 언어인 HTML, CSS, JavaScript 등의 프로그래밍 언어를 사용하여 작성됩니다
사용자(User)와 클라이언트(Client)는 서로 다르다!
사용자(User) : 인터넷을 사용하여 웹 사이트를 이용하는 진짜 사람!
클라이언트(Client) : 웹 서버와 통신하는 소프트웨어 or 하드웨어!
정적 웹 페이지는 보통 정보 제공을 목적으로 사용됩니다.(회사 소개 홈페이지 등..)
자주 업데이트를 하지 않기 때문에 일반적으로 웹 서버에 저장하여 사용됩니다.
Static Web Page의 장점?
- 빠른 로딩 속도 : 정적 웹 페이지는 서버에 미리 저장되어 있고, 서버에서 처리할 작업(사용자 요청에 대한 응답정도)이 적기 때문에 로딩 속도가 굉장히 빠릅니다. 따라서 사용자에게 빠르게 컨텐츠를 제공할 수 있습니다.
- 쉬운 호스팅 : 정적 웹 페이지는 동적 웹 페이지에 비해 웹 호스팅을 위해 요구되는 리소스가 적습니다. 정적 웹 페이지는 단순히 HTML, CSS, JavaScript 정도로만 되어 있기 때문인데, 이는 서버에 적은 리소스를 요구하며 결과적으로 호스팅 비용이 적게 드는 효과가 있습니다.
- 높은 보안성 : 정적 웹 페이지는 동적 웹 페이지에 비해 보안성이 더 높습니다. 데이터베이스 작업이나 사용자 입력 처리와 같은 작업이 없이 이미 서버에 저장된 파일을 보여주기만 할 뿐이므로 상대적으로 보안성이 더 높습니다.
- 규모가 작은 경우 간단한 유지보수 가능 : 정적 웹 페이지는 HTML, CSS, JavaScript로만 이루어져 있기 때문에, 동적 웹 페이지의 유지보수에 비해 쉽습니다.
- 높은 호환성 : 정적 웹 페이지는 거의 모든 브라우저와 기기에서 호환이 됩니다. 동적 웹 페이지는 서버 측에서 생성되기 때문에 종종 호환성에 대한 이슈가 있지만, 정적 웹 페이지는 이러한 이슈가 적습니다.
Static Web Page의 단점?
- 한정된 기능 : 사용자와 상호작용이 필요한 기능(예를 들어 회원 가입, 로그인..)들은 동적 웹 페이지에서 제공할 수 있는 부분입니다. 따라서 정적 웹 페이지는 이런 기능들에 있어 한정적인 모습을 보입니다.
- 규모가 큰 경우 유지보수의 어려움 : 정적 웹 페이지는 수정 시에 직접 파일을 손봐야합니다. 이는 페이지의 규모가 커질수록 유지 보수가 어려워짐을 초래합니다.
- 개인화 된 컨텐츠 제공의 어려움 : 정적 웹 페이지는 모든 사용자에게 동일한 컨텐츠를 제공하기 때문에, 사용자 개개인에 맞춘 컨텐츠 제공은 어렵습니다.
- 검색 엔진 최적화(SEO)의 어려움 : 동적 웹 페이지에 비해 SEO가 어려울 수 있는데, 정적 웹 페이지는 검색 엔진에게 적절한 메타 데이터를 제공하지 않아 검색 엔진이 인식을 잘 못할 수 있기 때문입니다.
- 사이트 확장의 한계 : 정적 웹 페이지는 웹 사이트의 확장성이 제한됩니다. 새로운 페이지나 기능을 추가할 땐, 직접 파일을 만들고 연결해야 하므로 작업 시간이 길어집니다.
Dynamic Web Page(동적 웹 페이지)란?
서버에 저장된 데이터를 스크립트에 의해 가공하여 생성되는 웹 페이지. 서버 쪽 언어(PHP, ASP,JSP 등..) 또는 클라이언트 쪽 언어(JavaScript)를 사용하여 생성됩니다. 웹 어플리케이션, 게시판, 쇼핑몰 등 상호작용이 많고 복잡한 웹 사이트를 구축하는데 유용합니다.
Dynamic Web Page의 장점?
- 상호작용 가능 : 동적 웹 페이지는 서버 단에서 동적으로 생성되기 때문에, 사용자와 상호작용(예를 들어 로그인, 회원가입..)이 가능합니다. 사용자가 입력한 데이터를 저장, 수정 등이 가능합니다
- 다양한 기능 제공 : 서버 단에서 동적으로 생성된 컨텐츠라 함은 다양한 방식으로 조합, 조작을 하여 다양한 기능을 제공할 수 있음을 의미합니다.(권한 관리, 장바구니 등..)
- 효율적인 데이터 관리 : 동적 웹 페이지는 데이터베이스와 상호작용하기 때문에 정보를 불러오거나 변경할 수 있습니다. 이런 기능은 많은 데이터를 다루거나 복잡한 작업을 처리할 때 효과적입니다.
- 개인화 된 컨텐츠 제공 : 사용자와 상호작용이 가능하기 때문에, 개개인에 맞춘 정보를 제공할 수 있습니다.
- 검색 엔진 최적화(SEO) 수월 : 동적 웹 페이지는 컨텐츠를 동적으로 생성하기 때문에 검색 엔진 최적화가 수월합니다. 이 말은 검색 엔진으로 노출과 트래픽 증가에 도움이 된다는 뜻입니다.
Dynamic Web Page의 단점?
- 느린 로딩 속도 : 동적 웹 페이지는 서버에 미리 저장된게 아니라 동적으로 생성되는 것이기 때문에, 정적 웹 페이지에 비해 로딩 속도가 오래 걸릴 수 있습니다. 서버가 데이터베이스와 상호작용 같은 작업들을 추가적으로 하기 때문입니다.
- 높은 서버 부하 : 서버가 데이터베이스와 상호작용 같은 작업을 진행하기 때문에, 서버가 차지하는 리소스가 많이 들 수 있습니다. 따라서 정적 웹 페이지보다 서버 부하가 높습니다.
- 보안성 이슈 : 서버는 데이터베이스와 상호작용 하는 부분에서 보안성 이슈가 발생할 수 있습니다. SQL 주입이나 XSS와 같은 공격이 그 예에 해당합니다.
- 어려운 유지보수 : 동적 웹 페이지는 복잡한 서버 쪽 소스코드, 데이터베이스 연동과 같은 부분을 포함하므로 다양하고 전문화 된 지식, 경험을 요구합니다. 따라서 유지보수가 어렵고 복잡할 수 있습니다.
- 호환성 이슈 : 서버 쪽에서 생성되는 컨텐츠가 브라우저나 기기에 따라 다르기 때문에, 동적 웹 페이지 개발 시 호환성 부분을 잘 대비해야 합니다.
Static Web Page vs Dynamic Web Page
정적 웹 페이지와 동적 웹 페이지의 가장 큰 차이는 컨텐츠가 어떻게 생성되느냐입니다.
정적 웹 페이지 | 동적 웹 페이지 | |
컨텐츠 제공 | 동일한 컨텐츠 제공 | 상황에 따른 컨텐츠 제공 |
유지 관리 비용 | 적음 | 많음 |
서버 부하 | 적음 | 많음 |
경험 제공 | 모든 사용자에게 동일한 경험 제공 | 모든 사용자에게 맞춘 경험 제공 |
따라서 단순 정보 제공은 정적 웹 페이지가 효율적이고, 상호작용을 통한 정보 제공은 동적 웹 페이지가 적합합니다.
더 알아보기
여기까지 정적 웹 페이지와 동적 웹 페이지에 대해 알아보았습니다
정적 웹 페이지는 Web Server가 담당하고
동적 웹 페이지는 Web Application Server가 담당합니다
자세한 내용은 다음 게시글을 참고하시면 됩니다
Reference
반응형
'Network' 카테고리의 다른 글
최신 Chat GPT-4 사용법 (0) | 2023.03.15 |
---|---|
Web Server vs Web Application Server (0) | 2023.03.15 |
Load balancing이란? (0) | 2023.02.15 |