Web Server VS WAS

황희윤·2023년 10월 17일

정적인 콘텐츠 VS 동적인 콘텐츠

정적인 콘텐츠

  • 누가 언제 서버에 요청을 해도 동일한 내용을 보여주는 것
  • 사용자가 달라지더라도 바뀌지 않는 콘텐츠
  • HTML, CSS, JavaScript로 만들어진 결과물
  • ex) 회사 로고, HTML 파일 등

동적인 콘텐츠

  • 누가 언제 어떻게 서버에 요청했는지에 따라 다른 내용을 보여주는 것
  • ex) 페이스북의 피드, 장바구니 등

웹 서버(WS)

정적 콘텐츠를 제공

  • Nginx, 아파치 HTTP 서버

WAS

DB 조회나 다양한 로직 처리를 요구하는 정적인 콘텐츠를 제공

  • 동적인 콘텐츠 뿐만 아니라 정적인 콘텐츠도 제공 가능하다.

  • ex) 아파치 톰캣, Ruby on Rails

웹 서버를 같이 사용했을 때의 장점

1. 책임 분할을 통한 서버 부하 방지 🤯

  • 정적 콘텐츠는 웹서버가, 동적 콘텐츠는 WAS 담당

2. 웹 서버가 여러 개의 WAS를 로드밸런싱

  • 하나의 WAS를 두지 않고 여러 개의 WAS를 두어서 업무 분담

3. 여러 대의 WAS Health Check

  • Health Check
    • 서버에 주기적으로 HTTP 요청을 보내 서버의 상태 확인
    • ex) 특정 URL 요청에 200 응답이 오는지 확인
    • Interval: Health Check를 통해 서버 상태를 확인하는 요청을 날리는 주기(default : 5초)
    • Fails : 요청을 날렸을 때 제대로 된 응답이 오지 않는 횟수(서버가 비정상인 경우로 default = 1회)
    • Passes : 서버가 다시 복구되어서 정상적인 응답이 돌아온 횟수(default 1회)

4. 보안

  • WAS는 DB 관련 로직을 가지고 있기 때문에 보안 위험이 높은데, 앞단에 웹 서버를 둬서 WAS를 노출시키지 않는다.
profile
HeeYun's programming study

0개의 댓글