asdfsdaaf

헷갈리는 WEB과 WAS

2018. 2. 9. 06:28

  WEB

#정적인 컨텐츠를 읽는 소프트웨어

웹 서버는 네트워크를 통하여 웹 틀라이언트들로부터 HTTP 요청들을 수신하고 보통 HTML 문서들과 같은 웹 페이지들과 같은 부가적인 컨텐츠들과 함께 HTTP 응답을 제공하는 프로그램을 운영하는 컴퓨터 혹은 그와 같은 역할을 하는 컴퓨터 프로그램을 뜻합니다.

이러한 웹 서버는 전형적인 기능은 웹 클라이언트가 요청한 웹 페이지를 서버 컴퓨터의 하드 디스크에서 찾아서 웹 브라우저에 적합하도록 그 파일을 포맷하여 네트워크를 통하여 전송하는 것입니다. 만약 웹 클라이언트(사용자)가 이미지 파일들을 요청하면 마찬가지로 요청받은 이미지 파일들을 찾아서 네트워크를 통하여 전송해 줍니다.

이러한 웹 서버 표준 동작들은 인터넷 상에서 이미 정해진 내용이 web client가 누구이던지 상관없이 그대로 보여지는 문서들인 정적인 문서들을 전달하는 것을 고려하여 설계되었습니다. 비록 web client로부터 넘겨받은 인자들에 따라 서로 다른 다양한 내용들을 보여주거나 계속적으로 변경되는 데이터들을 보여주는 웹페이지들인 동적 문서들을 어느정도 제한적으로 지원하기도 하지만 기본적으로 웹 서버는 정적 문서들의 처리를 목적으로 하여 동적 문서들을 지원하는데는 한계가 있습니다.

웹 서버 소프트웨어 종류는 아파치, 엔진엑스, 구글 웹 서버, 이크로소프트 IIS등이 있습니다.



  Web Application Server (WAS)

#동적인 컨텐츠를 읽는 소프트웨어 #보통 자바


//동적인 컨텐츠가 있다는 것은 데이터베이스를 필요로 한다는 의미와 같습니다.

웹이 대중화 되기 이전에는 이러한 정적 문서들만을 지원하는 웹 서버로도 별 문제가 없었으나 1990년대 중반을 지나며 인터넷과 웹 브라우저들이 대중화되면서 이제 주식 가격, 날씨 정보,어떤 물건의 배달 상황등과 같은 동적인 웹 페이지/데이터들을 제공되어야 하는 상황들이 관측되었으며 이에 웹 서버는 데이터베이스 접속 및 소프트웨어 응용프로그램 개발들이 될 수 있도록 확장되어야만 했습니다.


WAS에 대해서 좀 더 살펴보자면, Java Enterprise Edition 스펙을 구현한 서버(소프트웨어)로 분산 트랜잭션, 보안, 메시징, 쓰레드 처리 등의 기능을 처리하는 분산환경에서 사용되는 미들웨어입니다. "웹서버+웹 컨테이너+부가기능"으로 웹상에서 사용하는 컴포넌트를 올려놓고 사용하게 되는 서버입니다.


한국에서는 WAS 서버로 통칭하지만 영어권에서는 Application Server로 불린다. WEB 서버의 기능들을 구조적으로 분리하여 처리하고자 하는 목적으로 제시된것, 크게 WEB 서버의 기능과 컨테이너의 기능으로 구성한다.




-내장 was를 가지고 있다고 말하면 어떤 언어의 동적인 컨텐츠를 불러오는 기능을 말한다 경험상 자바가 아닌 언어를 이렇게 부르는 거 같습니다.-


WAS가 컨테이너도 포함될 수 있다고 하는데 이 컨테이너 Containner 무엇이냐면 JSP와 Servlet을 실행시킬 수 있는 SW를 웹 컨테이너라고 합니다.

[JSP] 서블릿(Servlet)이란? - _Jbee


JSP를 배울 때 대체적으로 Apache와 Tomcat을 사용합니다. Apache는 Web Server를 담당하고 Tomcat은 WAS 입니다.


ASP를 구동하기 위해서는 IIS를 사용합니다. APS의 환경이 MS계열 서비스라면 WAS의 기능을 담당하는 부분이 있어 별도의 WAS가 필요하지 않습니다.


#

  나눠 놓은 이유

그렇다면 ASP처럼 하나를 쓰지 않고 WAS와 웹서버가 동시에 왜 필요할까. 우리가 만드는 웹페이지는 정적 컨텐츠만 있는 것도 아니고 동적 컨텐츠도 함께 노출되게 됩니다. WAS가 정적 데이터를 처리로 인해 동적 컨텐츠의 처리가 지연이 될 것이고 이로 인한 페이지 노출시간이 늘어나게 됩니다.

WAS는 동적 처리에 최적화 되어 있는 서비스이기 때문에 처리 속도를 위해, 정적처리는 웹서버에서 처리를 하고, 동적 컨텐츠는 WAS에서 처리하게 됩니다. 간단히 말하면 분산처리를 위한 것입니다. 


WEB 서버, WAS 서버 - eun033


공유하기

facebook twitter kakaoTalk kakaostory naver band