서버란 무엇일까?
네크워크
- 여러대의 컴퓨터 또는 장비가 서로 연결되어서 정보를 주고받게 할 수 있는 기술
Client와 Server
택배 | 네트워크 | |
주소(IP) | 대구광역시 00구 00로 0000 | 192.168.**.* |
받는 사람(포트) | 홍길동 | 8080 |
- 네트워크에서 정보를 요청 받고 전달하려면 주소에 해당하는 IP 와 받는 사람에 해당하는 포트번호를 알려줘야 합니다.
웹 서버란?
- 인터넷을 통해 HTTP를 이용하여 웹상의 클라이언트 요청을 응답하는 통신을 하는 일종의 컴퓨터
- 웹 서버의 기본 동작 원리
- 브라우저를 통해 HTTP Request로 웹사이트를 웹서버에 요청
- 이후 웹서버는 요청을 승인하고 HTTP Response를 통해 웹사이트 데이터를 브라우저에 전송
- HTTP : 데이터를 주고 받는 양식을 정의한 "통신 규약"중 하나이다.
- 매우 범용적인 양식을 가지고 있어 전 세계에서 제일 널리 쓰인다.
- 통신규약 : 컴퓨터끼리 데이터를 주고 받을 때 정해둔 약속
API(application programming interface)
- 다른 소프트웨어 시스템과 통신하기 위해 따라야 하는 규칙을 정의한다.
- 개발자는 다른 애플리케이션이 프로그래밍 방식으로 애플리케이션과 통신할 수 있도록 API를 표시하거나 생성해야 한다.
인터페이스(interface)
- 서로 다른 두 개의 시스템, 장치 사이에서 정보나 신호를 주고받는 경우의 접점이나 경계면을 의미한다.
- 즉, 사용자가 기기를 쉽게 동작시키는데 도움을 주는 시스템
RESTful API
- API 작동 방식에 대한 조건을 부과하는 소프트웨어 아키텍처
- REST는 처음에 인터넷과 같은 복잡한 네트워크에서 통신을 관리하기 위한 지침으로 만들어졌다.
- REST 아키텍처 스타일을 따르는 API를 REST API라고 한다.
- 서버의 API가 적절하게 http를 준수하며 잘 설계되어있으면 "RESTful하다."
고유 리소스 식별자
- 서버는 고유한 리소스 식별자로 각 리소스를 식별한다.
- REST 서비스일 경우 서버는 일반적으로 URL을 사용하여 리소스 식별을 수행한다.
- URL은 리소스에 대한 경로를 지정한다.
- URL은 웹 사이트 주소와 유사하다.
- URL은 요청 엔드포인트라고도 하며 클라이언트가 요구하는 사항을 서버에 명확하게 지정한다.
메서드
- 개발자는 종종 HTTP를 사용하여 RESTful API를 구현한다
- HTTP 메서드는 리소스에 수행해야 하는 작업을 서버에 알려준다.
HTTP 주요 메서드
GET
- 클라이언트는 GET을 사용하여 서버의 지정된 URL에 있는 리소스에 액세스한다.
POST
- 클라이언트는 POST을 사용하여 서버에 데이터를 전송한다.
PUT
- 클라이언트는 PUT을 사용하여 서버의 기존 리소스를 업데이트한다.
Delete
- 클라이언트는 Delete을 사용하여 서버의 리소스를 삭제한다.
'Spring' 카테고리의 다른 글
[Spring] Lombok / application.properties (1) | 2024.09.28 |
---|---|
[Spring] 테스트 코드 JUnit (3) | 2024.09.25 |
[Spring] HTTP / Headers탭 / Response 탭 / header과 payload (1) | 2024.09.25 |
[Spring] Apache Tomcat / SpringBoot와 Spring / Postman (1) | 2024.09.25 |
[Spring]Gradle (0) | 2024.09.25 |