[Web Application Architecture]웹 애플리케이션 아키텍처
클라이언트 - 서버 아키텍처(2티어 아키텍처)
상품 정보 같은 리소스가 존재하는 곳과 리소스를 사용하는 앱을 분리시킨 것
여기서 앱은 클라이언트 리소스를 제공하는 곳은 서버
빈번한 데이터 업데이트가 필요한 경우 유리
보통의 서버는 리소스 전달역할만 함, 저장공간은 데이터베이스, 이렇게 분리되는 경우 3티어 아키텍처라고 한다.
클라이언트는 보통 플렛폼에 따라 구분됨(웹, 스마트폰 앱, 데스크탑 앱)
서버는 무엇을 하는가에 따라 구분됨(웹 서버, 파일 서버, 메일 서버, 데이터베이스 서버)
클라이언트 - 서버 통신 API
요청이 있어야 응답이 온다.
프로토콜은 통신 규약이다.
웹 어플리케이션 아키텍처에서는 HTTP 프로토콜
프로토콜마다 지켜야할 규약이 있다.
서버는 클라이언트에게 리소스를 활용할 수 있도록 인터페이스를 제공(API - Application Programming Interface)
API는 메뉴판과 같음
보통 인터넷에 있는 데이터를 요청할 때 HTTP 프로토콜을 사용하고 주소를 통해 접근
HTTP API 디자인 에는 Best Practice가 있음
HTTP 요청에는 메서드가 있고 앞서 리소스 요청(GET)을 했지만, 사용자 관리 API에는 사용자 추가(CREATE), 삭제(DELETE) 등도 있다.
메소드
- 조회(Read) - GET
- 추가(Create) - POST
- 갱신(Update) - PUT or PATCH
- 삭제(Delete) - DELETE
댓글남기기