1 minute read

Overview

  1. 서버와 클라이언트
  2. 웹 애플리케이션, 웹 프로그래밍이란?

1. 서버와 클라이언트

https://github.com/hy6219/TIL-Today-I-Learned-/blob/main/JSP%20Servlet/%EC%84%9C%EB%B2%84%EC%99%80%20%ED%81%B4%EB%9D%BC%EC%9D%B4%EC%96%B8%ED%8A%B8.png?raw=true

서버와 클라이언트

쉽게 이해해보자면, 서비스 제공과 요청 개념에서 클라이언트와 서버를 정리해볼 수 있다

클라이언트 : 서버측에게 서비스를 요청하는 쪽

서버 : 클라이언트로부터 받은 요청에 대한 서비스를 제공하는 쪽

또한, 서버는 기능적으로 두 가지 요소로 구성되어 있다.

웹 서버 Web Server : 클라이언트(사용자)로부터의 요청을 처리 결과 페이지를 전송

웹 애플리케이션 서버(WAS; Web Application Server) : 실질적으로 요청한 페이지의 로직이나 데이터베이스와의 연동을 처리할 수 있는 비즈니스 로직을 구현

웹 애플리케이션 서버의 대표적인 예로는

  • BEA 사의 WebLogic
  • IBM 사의 WebSphere
  • SUN 사의 iPlanet
  • Oracle 9iAS
  • 티맥스 Jeus
  • Tomcat

와 같은 다양한 종류가 있다

🌟 이번에는 WAS가 웹 애플리케이션을 어떻게 동작시키는 지 간단한 그림과 함께 살펴보자

https://github.com/hy6219/TIL-Today-I-Learned-/blob/main/JSP%20Servlet/WAS%EA%B0%80%20%EC%9B%B9%20%EC%95%A0%ED%94%8C%EB%A6%AC%EC%BC%80%EC%9D%B4%EC%85%98%EC%9D%84%20%EB%8F%99%EC%9E%91%EC%8B%9C%ED%82%A4%EB%8A%94%20%EC%9B%90%EB%A6%AC.png?raw=true

웹 애플리케이션 서버의 웹 애플리케이션 동작 과정 및 원리

상황을 설정해서 접근, 이해해보자

우리가 사이트에 회원가입을 한다고 상황을 가정해보자! 그 상황에서 위의 그림의 순서와 함께 접근해보자!

  1. 사용자가 회원가입 페이지에 있는 모든 필수 정보를 작성한 후, 회원가입 버튼을 누른다 ➡️ 이것은 웹 서버에 일종의 서비스를 요청하는 과정이다!
  2. 클라이언트(사용자)로부터 일종의 서비스(회원가입)를 요청받은 웹 서버는 실질적인 로직 처리나 데이터베이스 연동을 위한 비즈니스 로직을 위하여 웹 애플리케이션 서버 WAS에 정보를 전달한다
  3. WAS데이터베이스에 전달받은 정보(회원가입 정보)를 저장한다
  4. 데이터베이스에서는 WAS에게 요청받은 서비스에 대한 작업(회원가입) 성공 실패 여부를 결과값으로써 전달한다
  5. WAS는 웹서버가 클라이언트에게 적절한 결과 페이지 출력을 할 수 있도록, 요청받은 서비스에 대한 처리 결과(회원가입 서비스에 대한 처리 결과)를 전달한다
  6. 웹 서버는 요청받았던 회원가입 서비스에 대한 결과를 사용자에게 명시하기 위해 다음 페이지를 결과에 대한 페이지로 하여, 결과를 출력해준다(예: 회원가입 성공 혹은 실패)

하지만, 주의할 점은 ,지금은 톰캣을 기능상 웹 서버와 웹 애플리캐이션 서버로 나누어 이해하고자 분리하여 설명하였지만 , 톰캣은 사실상 웹 서버를 내장하고 있기 때문에, 두 가지 역할을 함께 수행한다는 점을 기억하자!

  • 웹 서버 : 정적인 페이지를 처리(HTML)
  • WAS : 동적인 페이지를 처리(JSP 서블릿)

2. 웹 애플리케이션, 웹 프로그래밍이란?

이번에는 웹 애플리케이션과 웹 프로그래밍의 개념에 대해서 잠깐 짚고 넘어가자

  • 웹 애플리케이션

: 웹 브라우저로 접근하여 사용되는 프로그램

  • 웹 프로그래밍

: 웹 애플리케이션을 제작하는 과정

Updated: