WAS와 WEB 서버 차이

웹서버는 HTTP 프로토콜을 기반으로 클라이언트가 웹 브라우저에 요청을 하면 요청을 받아 정적 콘텐츠를 제공하는 서버입니다. 정적 콘텐츠는 HTML, CSS, 이미지, 파일 등의 콘텐츠가 제공됩니다.

WAS란 DB 조회 또는 다양한 로직의 처리가 요구되는 동적 콘텐츠를 제공하기 위해 만들어진 Application 서버입니다.

WAS(Web Application Server)란

웹서버란 무엇인가?

  • WEB Server 의미
  • 하드웨어: WEB 서버가 설치되어 있는 컴퓨터
  • 소프트웨어: 클라이언트로부터 HTTP 요청을 받아 정적 콘텐츠(html, Jpg, css 등)을 제공하는 컴퓨터
  • 개념
  • 정적 콘텐츠: WAS를 처치지 않고 바로 자원 제공
  • 동적 콘텐츠: 클라이언트 Requset를 WAS 보냄
  • 종류: Apache Server, Nginx, IIS, WebToB

WAS(Web Application Server)란?

  • 개념
  • DB 조회 및 로직 처리가 요구되는 동적 콘텐츠를 제공하기 위한 목적의 서버
  • Web Container 또는 Servlet Container 로 불림
  • Container는 Jsp, Servlet를 실행시킬 수 있는 소프트웨어를 뜻함.
  • 기능
  • 프로그램 실행 환경 및 DB 접속 기능
  • 여러 개 트랜잭션 관리 기능
  • 종류: Tomcat, Websphere, Weblogic, Jeus 등
※서블릿(Servlet)
서블릿(Servlet)은 자바로 작성된 웹 애플리케이션의 구성 요소 중 하나입니다. 서블릿은 웹 서버에서 동적인 웹 페이지를 생성하거나 웹 요청을 처리하기 위해 사용됩니다.

서블릿은 일종의 자바 클래스로, Java Servlet API에 정의된 규칙에 따라 작성됩니다. 이들은 주로 HTTP 요청을 처리하고, 클라이언트로부터 데이터를 받아 처리한 후, 동적인 웹 페이지나 다양한 형태의 응답을 생성합니다.

서블릿은 웹 애플리케이션 서버(예: Apache Tomcat, Jetty 등)에서 실행되며, 클라이언트로부터 오는 HTTP 요청을 처리하기 위해 사용됩니다. 주로 HTML을 생성하거나 데이터베이스와 상호 작용하여 동적인 콘텐츠를 생성하는 데 사용됩니다.
Server(서버)

WAS를 사용하는 이유

  • 정적 콘텐츠와 동적 콘텐츠를 분리함으로써 서버 부하 방지
    • 동적 콘텐츠 및 DB 조회는 정적 콘텐츠를 처리하는데 비해 시간이 소요되기 때문에 정적·동적 콘텐츠를 분리해서 관리하는 것이 효율적임
  • 보안 강화
    • DB가 외부로 노출될 경우 보안에 문제가 발생할 수 있어 웹서버와 WAS를 분리해서 사용하면 보안이 강화됨.

Similar Posts

  • [Linux] 리눅스 mv 명령어 사용법 및 mv 명령어 옵션

    리눅스 mv 명령어는 Move의 약자로 파일 또는 디렉토리를 이동하거나 이름을 변경할 때 사용하는 명령어입니다. 기본적인 리눅스 mv 명령어 사용법과 옵션 및 활용 방법에 대해 알아 보겠습니다. ✅ 리눅스 mv 명령어 기본 옵션 mv 명령어의 기본 사용 방법입니다. ✅ mv 명령어 옵션 ✅ mv 명령어 활용하기 1. 여러 파일을 한번에 이동 시키기 2. 명령어로…

  • [Linux] userdel 명령어: 사용자 계정 삭제 명령어

    리눅스에서 useradd로 계정 생성 후 삭제가 필요한 경우 userdel 명령어를 사용합니다. ✅ userdel 명령어 기본 사용은 아래와 같습니다. ✅ userdel 주로 사용하는 옵션 userlde만 입력해서 사용자를 삭제할 경우 보통 /home/[user]로 계정명이 폴더에 버전에 따라 남아있거나 삭제되는데 /var/spool/mail/[user] 파일은 대부분의 리눅스에서 남게 됩니다. ✅ 사용자 계정 강제 삭제 제거할 사용자 계정이 로그인 되어 있거나…

  • iptables 개념과 설치 | iptables 명령어

    iptables는 netfilter.org에서  C언어로 만들어진 패킷 필터링이며 무료 방화벽 서비스입니다. 리눅스 방화벽의 기본 정책은 필요한 것을 제외한 모든 패킷에 대해 거부하는 것이 방화벽의 기본 정책입니다. 기본 설치 명령어는 다음과 같습니다. 기본 룰 설정 옵션은 다음과 같습니다. Ⅰ. iptables 용어와 기본 iptables에서는 체인[Chain]이라고 불리는 규칙[Rule]으로 패킷 필터링[Packet Filtering]을 하며, 패킷[Packet]에 대해 허용할 것인지 거부할 것인지를…

  • 리눅스 SSH 정의 및 기본 설정

    ✅ 리눅스 SSH 정의 SSH(Secure Shell)란 원격 호스트 컴퓨터로 접속하기 위해 사용되는 인터넷 프로토콜입니다. 보안 쉘은 기존 유닉스 시스템의 텔넷은 암호화가 이루어지지 않아 계정 정보가 해킹에 노출되는 위협이 있었기 때문에, 1995년 암호화 기능을 추가해서 나온 프로토콜입니다. 리눅스 SSH는 암호화 기법을 사용하며, 쉘로 원격 접속 후 리눅스 커멘드 라인에서 작업을 하게 되며, 기본 포트…

  • 리눅스 톰캣 설치

    리눅스 톰캣 설치(Ver 9.0.83)를 진행해 보겠습니다. 1. wget 설치 먼저 레드헷 계열에서 사용하는 패키지 매니저인 yum으로 wget 설치를 진행합니다. wget은 웹 서버로부터 컨텐츠를 가져오는 프로그램입니다. 2. 리눅스 톰캣 설치하기: Apach Tomcat ▼ Apach Tomcat 사이트에 접속합니다. 9 버전을 설치하기 위해 ‘링크 주소 복사’ 버튼을 눌러 줍니다. /usr/local/ 폴더에 설치를 진행할 것이며, 폴더는 원하는…

  • Linux snapd | Rocky Linux에서 snapd 설치

    스냅크래프트(Snapcraft) 또는 스냅(Snap)은 캐노니컬(Canonical)이 시작한 Ubuntu 스마트폰 운영 체제를 위한 소프트웨어 배포 및 패키지 도구로서 개발되었으며, 패키지 관리 시스템이다. 스냅(snap)이라고 불리는 패키지와 snapd를 사용하는 도구는 업스트림 소프트웨어 패키징을 간편화하여 다양한 리눅스 배포판에서 사용할 수 있도록 도와준다. Linux snapd은 앱 패키지로 데스크톱, 클라우드, IoT에서 사용 가능하며, 설치가 용이하고 안전하며 다양한 플랫폼에서 사용할 수 있으며…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 0   +   6   =