Computer Science/Web

웹 서비스 구조

manchesterandthecity 2024. 12. 3. 17:08

웹 서비스 구조 이해하기

웹 서비스는 정적(Static) 또는 동적(Dynamic) 페이지를 통해 사용자에게 정보를 제공하는 시스템이다.
이 시스템은 웹 서버와 WAS(Web Application Server)의 협력을 통해 작동하며, 클라이언트 요청에 따라 데이터를 처리하고 응답을 제공한다.

 

정적 페이지와 동적 페이지의 차이

1. 정적 페이지 (Static Page)

  • 특징:
    • 서버에 저장된 HTML 파일을 그대로 클라이언트로 전송.
    • 변경 사항이 있으면 직접 파일을 수정해야 함.
  • 예시:
    • 단순 정보 제공 웹사이트 (예: 소개 페이지).

2. 동적 페이지 (Dynamic Page)

  • 특징:
    • 데이터베이스나 프로그램을 통해 사용자 요청에 맞게 콘텐츠를 생성.
    • 변경 사항을 실시간으로 반영 가능.
  • 예시:
    • 쇼핑몰, SNS 등.

 

웹 서버와 WAS의 역할

1. 웹 서버 (Web Server)

  • 역할:
    • 클라이언트(브라우저)의 요청을 받아 정적 콘텐츠(HTML, CSS, JavaScript) 제공.
    • WAS로 동적 요청을 전달.
  • 대표 소프트웨어:
    • Apache, Nginx, IIS.

작동 원리:

  1. 클라이언트가 URL을 요청.
  2. 웹 서버가 요청한 파일을 찾아 클라이언트로 응답.
  3. 동적 콘텐츠 요청 시 WAS로 전달.

2. WAS (Web Application Server)

  • 역할:
    • 동적 콘텐츠를 생성하는 프로그램 실행.
    • 데이터베이스와 연동하여 사용자 요청 처리.
    • 비즈니스 로직 수행.
  • 대표 소프트웨어:
    • Tomcat, JBoss, WebLogic.

작동 원리:

  1. 웹 서버로부터 동적 요청을 받음.
  2. 요청에 맞는 데이터를 생성하거나 데이터베이스에서 가져옴.
  3. 클라이언트에게 동적으로 생성된 콘텐츠 전달.

 

웹 서버와 WAS 비교

항목 웹 서버 WAS
주요 기능 정적 콘텐츠 제공 동적 콘텐츠 처리
연동 클라이언트 요청 처리 웹 서버와 협력하여 데이터베이스 접근
주요 역할 리소스 관리 비즈니스 로직 수행

 

 

웹 서비스 구조의 장점

  1. 효율성:
    • 웹 서버와 WAS가 역할을 분담해 성능 최적화.
  2. 확장성:
    • 각 서버를 독립적으로 확장 가능.
  3. 안정성:
    • 요청 분리로 시스템 과부하를 방지.

 

결론

웹 서비스는 웹 서버WAS의 협력을 통해 정적 및 동적 콘텐츠를 효율적으로 제공하는 시스템이다.

이 구조는 성능, 확장성, 안정성을 모두 고려한 설계로, 현대 웹 환경의 핵심이라고 할 수 있다.

 

 

참조:
https://melonicedlatte.com/web/2019/06/23/210300.html

https://gmlwjd9405.github.io/2018/10/27/webserver-vs-was.html

https://inpa.tistory.com/entry/WEB-%F0%9F%8C%90-%EC%9B%B9-%EC%84%9C%EB%B9%84%EC%8A%A4-%EA%B5%AC%EC%A1%B0-%EC%A0%95%EB%A6%AC