서버와 HTTP API

louis220·2021년 2월 22일
0

서버란?

서버는 클라이언트에게 네트워크를 통해 정보나 서비스를 제공하는 컴퓨터 시스템으로 컴퓨터 프로그램 또는 장치를 의미한다. 즉 클라이언트라 요천하는 정보를 서버가 받아 처리해 응답을 해주는 것이다.
서버 컴퓨터는 일반적인 컴퓨터와 다를 것이 없다( CPU, 메모리, 저장장치 등). 모든 컴퓨터는 서버역할을 할 수 있다. 내가 공유하고 싶은 정보가 있을 때 내 컴퓨터에 그 정보를 올려놓고 다른 컴퓨터들이 접속해 그 정보를 공유 할 수 있도록 한다면 내 컴퓨터가 서버 역할을 하는 서버 컴퓨터가 되는 것이다. 하지만 보통 서버컴퓨터는 클라이언트의 요청을 처리하기 위해 고성능을 갖췄다. 또 여러대의 서버를 가지고 분산처리하기도 한다. 사용자들이 언제 접속하여 정보를 요청 할지 모르기 떄문에 24시간 켜 놓는다. 그때 발생하는 열을 잡기 위해 에어컨을 항상 켜 놓는 것이 이때문이다.

클라이언트가 서버에서 특정 주문을 할때 지켜야하는 약속이 몇가지 있는데 그것을 프로토콜이라고 한다.

HTTP

웹 애플리케이션에서는 클라이언트와 서버가 서로 HTTP라는 프로토콜을 이용해 서로 대화를 나눕니다

HTTP 이외에도 여러 종류의 프로토콜이 있는데 외울필요는 없지만 상식선에서 알아두면 좋다

API

클라이언트가 서버에게 요청할 때는 정확한 주문방법에 따라 주문해야 한다
보통 클라이언트는 서버 제작자가 아니기에 어떻게 주문해야하는지 모르는 게 당연한데,
서버가 어떻게 구성되어 있고 어떻게 주문할 수 있는지 알려주는 것을 API 라고 한다
API는 Application Programming Interface의 약자이며, Interface의 사전적 의미를 의사소통이 가능하도록 만들어진 접점이다.
따라서 서버는 클라이언트가 제대로 요청할수 있도록(리소스 전달을 위해) API문서를 작성해 클라이언트가 이를 보고 활용할 수 있도록 한다
보통 인터넷에 있는 데이터를 요청할 때는 HTTP 프로토콜을 사용하며, 주소(URL, URI)을 통해 접근 할 수 있다

HTTP API 디자인을 잘 하는 법

HTTP API 디자인에는 Best Practice가 존재한다


Put : replace
Patch : modify

profile
기록을 하자

0개의 댓글