[Web] 웹 애플리케이션(Web Application)

Gogh·2023년 1월 2일
0

Web

목록 보기
1/8
post-thumbnail

🎯 목표 : 웹 애플리케이션 아키텍처와 구현 기술에 대한 이해

📒 Web Application Architecture

📌 웹 애플리케이션의 구조란?

  • 정적 페이지만 있다면 웹사이트다.
  • 정적 페이지를 포함한 동적 페이지까지 있다면 웹 애플리케이션이라 할수 있다.
  • 클라이언트 - 서버간의 연결에 대한 구조라 볼수 있다.
  • 어떻게 내부의 요소들이 상호간의 소통을 하는지 알수 있다.
  • 신뢰성, 확장성, 보안성, 견고성과 같은 요소들을 고려하여 설계 해야한다.

📌 웹 애플리케이션의 요청

  • Client-side 와 Server-side로 작동하며 유저가 요청을 하면 두 프로그램이 작동한다.
  • 유저의 입력에 따라 브라우저에서 작동하는 프로그램. 프론트 엔드
  • HTTP 요청에 따라 서버에서 요청 처리하는 프로그램. 백엔드

📌 웹 애플리케이션의 계층 구조

  • 개발자는 개발하는 서비스에 따라 각 단계를 독립적으로 변경 혹은 기능을 추가하면서 개발해야한다.

a

  • Presentation Layer : 유저와 브라우저 등을 이용해 직접적으로 접촉하며 Web Server가 이 영역에 포함된다, 유저 인터페이스 요소들도 포함된다.
  • Application Layer : Business Layer, Business Logic 혹은 Domain Logic 라고도 불리며 유저의 요청을 브라우저로 부터 받아 처리를한다. Application Server가 이 레이어에 포함되며 데이터 접근을 위한 경로를 규격화 하는 등 과정이 해당 레이어에 작성된다.
  • Data Access Layer : 애플리케이션의 데이터 저장소에 접근해 데이터를 불러 오거나 저장을 담당한다. Application Layer는 이 레이어와 밀접한 연관이 있고, Application Layer의 로직들은 어느 데이터 페이스에 접근해 데이터를 회수하고 혹은 저장할지 더 최적화 할수 있다.
  • Cross - cutting : 보안 통신 운영관리등을 위한 요소
  • Third-party Integrations : 제 3의 API 서비스를 이용하는 것. 소셜 로그인, PG사 이용 결제 등

📌 웹 애플리케이션의 구현 방식과 기술

👉 구현 방식

  • Single Page Application : 유저의 입력과 요청에 의한 콘텐츠나 정보의 최신화 페이지를 새로 불러오지 않고 현재 페이지에서 이루어 진다. AJAX, Asynchronous JavaScript, XML 등 이 주로 사용됨.
  • Microservice Architecture : 특정한 한가지 기능에 집중한 웹 애플리케이션.
  • Serverless Architecture : 서버와 기타 기반 기능들을 클라우드 서비스 제공자에게 의탁

👉 구현 기술

  • HTTP : 클라이언트와 서버간의 통신을 담당하는 프로토콜.
  • Cookie : 유저의 정보를 클라이언트에 보관, 클라이언트가 서버로 보내 유저를 식별하게한다.
  • Session : 세션 아이디라는 고유 아이디를 할당해 유저를 식별, 유출이 되면 안되는 정보는 서버에서 관리하면서 세션 아이디와 매칭해 저장 관리한다. 주로 사용되는 방법은 세션 정보는 쿠키에서 관리하고 실제 매칭되는 값들은 서버 측에서 관리한다.
  • 사용자 인증 : 아이디와 암호 등 개인정보, 보안 등을 제3의 서비스에 위임해 인증할수도 있다.
profile
컴퓨터가 할일은 컴퓨터가

0개의 댓글