Language/Nodejs

[Nodejs] RESTful API Server 란?

멱군 2023. 4. 14. 16:00

Nodejs로 웹서버를 운영하다보면 하나의 서버에서 다 운영하다보면 프론트 단에서 멈추는 순간이면 서버가 멈칫 할 수가 있다. 서버는 응답만 해주면 되는데, 그래서 웹서버도 서버와 클라이언트로 나누어야 한다. Nodejs RESTful API Server란무엇인지 알아보자

 

 

그래서 만들려고 하는건 RESTful API Server

여기서 REST (Representational State Transfer)는 웹 서비스와 애플리케이션 간의 통신을 위한 아키텍처 스타일이다.

REST는 웹에서 사용되는 기본 프로토콜인 HTTP를 기반으로 하며, 자원에 대한 CRUD (Create, Read, Update, Delete) 작업을 수행할 수 있는 일관된 인터페이스를 제공한다.

 

RESTful 웹 서비스 특징

그래서 RESTful이란 용어는 REST 아키텍처 원칙을 따르는 웹 서비스를 나타내며, RESTful 웹 서비스는 다음과 같은 특징을 가지고 있다

Stateless

각 요청이 독립적이며 서버는 클라이언트의 상태 정보를 저장하지 않음. 클라이언트는 필요한 모든 정보를 요청에 포함시켜 서버에 전달함

Client-Server

클라이언트와 서버는 독립적으로 작동하며, 각각의 역할이 명확하게 분리됨. 이를 통해 클라이언트와 서버는 각각 개발되고 유지보수될 수 있음

Cacheable

클라이언트는 서버에서 전달받은 응답을 캐시할 수 있음. 이를 통해 응답 시간이 단축되고 서버의 부하가 줄어듬

Layered System

REST 아키텍처는 계층화된 시스템을 지원. 이를 통해 각 계층은 독립적으로 작동하고 변경될 수 있으며, 전체 시스템의 유연성이 향상

Code on Demand (optional)

필요에 따라 서버는 클라이언트에게 실행 가능한 코드를 전달할 수 있음. 이 기능은 선택적이며 모든 RESTful 웹 서비스에 적용되지는 않음

Uniform Interface

REST는 일관된 인터페이스를 제공하여, 자원에 대한 CRUD 작업을 표준화된 방식으로 수행할 수 있음


RESTful 웹 서비스는 이러한 원칙들을 따라 구현되며, 다양한 클라이언트와 손쉽게 상호 작용할 수 있는 플랫폼 독립적인 인터페이스를 제공한다.

 

RESTful 웹 서비스 장점

RESTful 서버를 만드는 이유는 여러 가지인데, RESTful API는 일반적으로 웹 서비스에서 사용되며, 다음과 같은 장점들이 있다.

플랫폼 독립적

RESTful API는 플랫폼에 독립적이므로 다양한 클라이언트와 상호 작용이 가능함. 웹, 모바일, IoT 기기 등에서 API를 호출하여 서버와 데이터를 주고받을 수 있음

확장성

RESTful API는 상태가 없으며 요청 간 상태 정보를 저장하지 않음. 이로 인해 서버의 부하가 줄어들고, 수평 확장이 용이.

다양한 데이터 형식 지원

RESTful API는 JSON, XML, HTML 등 다양한 데이터 형식을 지원. 이를 통해 클라이언트는 필요에 따라 적절한 데이터 형식을 선택하여 사용할 수 있음.

 

결론적으로,

RESTful 서버는 플랫폼 독립적이고 확장성이 좋으며, 다양한 데이터 형식을 지원하고 일관된 인터페이스를 제공한다.

이러한 이유로 많은 웹 서비스와 애플리케이션에서 RESTful API를 사용하여 클라이언트와 서버 간의 통신을 구현하고 있다.

다음글에서는 실제로 구현해보겠다.

[프로그래밍/Server] - [Nodejs] RESTful API Server 만들기

 

[Nodejs] RESTful API Server 만들기

이전글에서 RESTful API Server에 대해서 알아보았다. [Nodejs] RESTful API Server 란? Nodejs로 웹서버를 운영하다보면 하나의 서버에서 다 운영하다보면 프론트 단에서 멈추는 순간이면 서버가 멈칫 할 수가

devit.koreacreatorfesta.com