웹 애플리케이션 아키텍처의 특징

uglyduck.dev·2020년 9월 27일
0

개념 모아 🗂

목록 보기
1/40

웹 애플리케이션 서버 구조

  • 클라이언트와의 통신은 웹 서버가 전담 -> 네트워크 및 멀티 스레드 프로그래밍으로부터 탈출
  • 애플리케이션 서버는 애플리케이션 실행 및 관리에 집중

1. 기존 C/S 환경

기존 C/S 환경 1

  • 기존의 C/S 환경은 비즈니스 처리 부분을 서버에 배치하고 UI 처리 부분을 클라이언트에 배치
  • 업무가 변경되면 클라이언트 프로그램을 재설치해야하므로 기능 추가 및 변경에 있어서 유연한 대처가 어려움.

2.웹 환경

웹 환경

  • 비즈니스 로직, UI 로직 모두 서버에 배치
  • 기존의 C/S 환경과는 반대로 재설치 없이 추가된 기능이나 변경된 기능을 이용할 수 있음
  • 애플리케이션을 실행할 때마다 UI 로직을 내려받으므로 오버헤드가 발생될 우려가 있음.

애플리케이션 실행

  • 웹 브라우저가 설치되어 있고 인터넷에 연결되어 있으면 어디서든 애플리케이션 실행가능

애플리케이션 실행

기존의 C/S 애플리케이션 개발

  • C/S 환경에서는 데이터 통신을 위해 네트워크 프로그래밍을 해야함
  • 서버에서는 다중 클라이언트 요청을 동시에 처리하기 위해 멀티 스레드 프로그래밍을 해야함.

웹 환경에서의 애플리케이션 개발

  • C/S 환경의 단점을 보완하기 위해 웹 브라우저와 웹 서버가 등장했고 기존의 네트워크 프로그래밍, 멀티 스레드 프로그래밍 역할을 대신해서 수행해주므로 개발자는 어떤 업무를 처리하고 무엇을 출력할 것인가에 대해서만 고민하면 됨.
    웹 환경에서의 애플리케이션 개발

웹 애플리케이션의 등장 이유

  • 자주 변경되는 시스템의 유연하게 대처하지 못하는 기존의 C/S 환경을 보완하기 위해서
  • 매번 클라이언트 프로그램의 재설치를 예방하기 위해서

Reference

엄진영, 『자바 웹 개발 워크북』, 프리렉(2018.8.9), 53~59p

profile
시행착오, 문제해결 그 어디 즈음에.

0개의 댓글