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

  • 리눅스 hosts.allow 및 hosts.deny 설정

    리눅스 서버에서 특정 IP만 허용 및 특정 IP에 대한 차단을 위해 리눅스 hosts.allow 및 hosts.deny 설정을 각각 진행할 수 있습니다. iptables 방화벽에서 특정 IP만 SSH 접속을 허용하는 방법을 사용할 수 있지만 1개 이상의 IP가 SSH에 접속해야 하는 경우 hosts.allow 설정을 진행할 수 있습니다. 목차웹서버란 무엇인가?WAS(Web Application Server)란?WAS를 사용하는 이유✅ 리눅스 hosts.allow 설정 ✅…

  • Linux: crontab 설정

    윈도우 스케줄러와 비슷한 개념의 리눅스 crontab은 주기적으로 홈페이지 및 DB 데이터를 백업해야 하거나 특정 시간에 로그 파일 등을 삭제해서 서버 유지 관리가 필요한 경우에 사용되는 스케줄러입니다. 크론탭은 특정 시간에 주기적으로 작업이 자동으로 이루어지도록 설정하는 것을 의미합니다. 목차웹서버란 무엇인가?WAS(Web Application Server)란?WAS를 사용하는 이유1. 크론탭 자주 사용되는 명령어 vi 명령어처럼 편집할 수 있는 명령어입니다. 직접…

  • 셔뱅(Shebang) [#! /bin/bash]

    shebang (셔뱅 또는 해시뱅)은 스크립트 파일의 첫 줄에 쓰이는 #!(해시 기호 + 느낌표)로 시작하는 구문입니다. 이 줄은 해당 스크립트를 어떤 인터프리터로 실행 할지를 지정합니다. 인터프리터(interpreter)는 프로그래밍 언어로 작성된 코드를 한 줄씩 읽고 즉시 실행하는 프로그램입니다. 이는 “작성된 명령을 번역해서 곧바로 실행해주는 번역기”라고 볼 수 있습니다. 보통 ASCII 텍스트 파일로 작성된 셸 스크립트에서 해시…

  • Syslog란 무엇인가? | rsyslog.conf 설정

    Syslog는 원래 Sendmail의 일부로 개발되었으며, 이후 로그 관리의 편리함이 인식되면서 독립적인 표준으로 발전하게 되었습니다. System Logging의 약자로, 로그를 기록하고 관리하는 표준 서비스 또는 프로토콜을 의미합니다. 메일 서버, FTP 서버 등 다양한 프로그램이 생성하는 메시지를 중앙에서 수집하여 로그 파일로 저장하고, 이를 분석할 수 있도록 지원합니다. 시스템을 효율적으로 모니터링하고, 잠재적인 문제를 신속하게 식별 및 해결하며,…

  • echo 명령어: From 확장과 인용

    echo 명령어는 문자열을 그대로 출력해 주는 명령어이다. echo 명령어는 프롬프트에서 사용하는 일은 거의 없으며, 쉘 스크립트 작성 시에 자주 사용하는 명령어이다. 표준 출력 상에 해당 텍스트 인자를 표시한다. 목차웹서버란 무엇인가?WAS(Web Application Server)란?WAS를 사용하는 이유1. echo 명령어 옵션 2. echo $ $뒤에 오는 문자열이 변수로 선언되어 있는 경우 해당 변수의 값을 출력해 준다.

  • 리눅스 sort 명령어: 파일 정렬

    종류 및 분류의 사전적 의미를 가진 리눅스 sort 명령어는 아스키 파일 내용(레코드)을 정렬할 때 사용하는 명령어입니다. 알파벳순이나 오름차순 또는 내림차순으로 정렬해야 하는 경우에 사용하는 명령어입니다. 목차웹서버란 무엇인가?WAS(Web Application Server)란?WAS를 사용하는 이유✅ 리눅스 sort 명령어 기본 사용 방법 ✅ 리눅스 sort 명령어 옵션 ✅ 리눅스 sort 명령어 사용 예시 기본 사용 방법입니다.

답글 남기기

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

Prove your humanity: 3   +   9   =