1. Server 기초 개념

2. Web Server

3. WAS

4. Web Server vs WAS

1. Server 기초 개념

1-1) Server

서버란 컴퓨터 네트워크에서 다른 컴퓨터에 대해 자신이 갖고 있는 기능이나

서비스, 데이터 등을 제공하는 컴퓨터 또는 그와 같은 기능을 가진 '소프트웨어'라고 함.

1-2) Server의 종류

애플리케이션 서버, 카탈로그 서버, 통신 서버, 컴퓨팅 서버, 데이터 베이스 서버 ,

파일 서버, 메일 서버 ...

2. Web Server

2-1) Web Server(하드웨어)

웹사이트의 컴포넌트 파일들을 정리하는 컴퓨터

컴포넌트 파일에는 HTML, Images, CSS, Javascript가 존재함.

컴포넌트 파일은 인터넷을 통해 클라이언트에게 전달됨.

→ 서버가 설치되어있는 하드웨어.

2-2) Web Server(소프트웨어)

사용자가 어떻게 호스트 파일들에 접근 하는지 관리

웹 서버는 주소 HTTP 프로토콜(Click)을 사용하여 클라이언트의 요청을 처리 및 응답.

→ 웹 브라우저로부터 HTTP를 받아 정적인 컨텐츠를 제공하는 소프트웨어

2-3) Web Server Image

Untitled

→ 즉, Web Server란 HTTP 프로토콜을 이용하여 클라이언트의 GET, POST 등의 메소드를

→ 활용한 요청을 서버에 전달하고 이를 서버라는 또 다른 컴퓨터가 그 요청을 처리해

→ 다시 클라이언트에게 전달해주는 작업이로 보면 됨.

3. WAS(Web Application Server)

3-1) WAS

WAS는 DB 조회나 다양한 로직 처리를 요구하는 동적인 컨텐츠 제공함.

웹 컨테이너 혹은 서블릿 컨테이너라고 부름.

컨테이더란, Servlet을 실행시킬 수 있는 소프트웨어를 말함.

Container란 JSP(Click), Servlet(Click)을 실행시킬 수 있는 소프트웨어를 말합니다.

3-2) WAS의 주요 기능

프로그램 실행환경과 DB 접속 기능을 제공합니다.

여러 개의 트랜잭션(Click) 관리 기능을합니다.

업무를 처리하는 비즈니스 로직을 수행합니다.

4. Web Server vs WAS

4-1) Web Server

: WAS를 거치지 않고 앞단에 빠르기 보내기 위해

: 서버의 부담을 줄이기 위해

웹 페이지는 정적 컨테츠와 동적 컨텐츠가 모두 존재합니다.

웹 서버를 통해 정적인 파일들을 Application Server까지 가지 않고 앞단에서 빠르게 보내기 위함입니다.

웹 서버에서는 정적 컨테츠만 처리함으로써 기능을 분배하여 서버의 부담을 줄일 수 있습니다.

4-2) WAS

: 사용자의 요청에 맞게 동적 컨텐츠를 제공함.

: 요청에 맞는 서비스를 제공하고, 효율성을 위해

사용자의 요청에 맞게 적절한 동적 컨텐츠를 만들어서 제공해야합니다.

웹 서버만 이용한다면 사용자가 원하는 요청에 대한 모든 결과값을 미리 만들어 놓고  서비스를 해야합니다.

WAS를 통해 요청에 맞는 데이터를 DB에서 가져와서 비즈니스 로직에 맞게 결과를 만들어서 제공함으로써 자원을 좀 더 효율적으로 사용할 수 있습니다.

4-3) Web Server와 WAS의 공존

→ 기능을 분리해서 서버 부하 방지

→ 물리적으로 분리해서 보안 강화

→ 여러 웹 어플리케이션 서비스 가능하게 하기 위해

4-3)-1. Web Server

효율성, 장애극복, 배포, 유지보수의 편의성을 위해 웹 서버를 WAS 앞에 두기

4-3)-2. WAS

Web Server에 플러그인 형태로 설정하면 더욱 효율적인 분산처리가 가능

여러 대의 WAS를 분리해서 무중단 운영을 위한 장애 극복.