본문 바로가기

Spring공부

서버란 무엇일까?

네트워크란?

네트워크는 여러대의 컴퓨터 또는 장비가 서로 연결되어서 정보를 주고 받을 수 있게 도와주는 기술입니다.

  • 컴퓨터, 라우터, 스위치, 허브 등의 장비들이 각각의 역할을 수행하여 정보를 주고 받습니다.
  • 서로 정보를 주고 받기 위해서는 IP 주소, 서브넷 마스크, 게이트웨이등의 정보를 설정하고 네트워크 프로토콜을 이용하여 통신을 하게 됩니다

 

 

Client와 Server

  • Client 즉, 브라우저에서 서버에 정보를 요청하는 과정을 간략하게 표현한 부분입니다.
  • 보시는 것 처럼 사용자는 브라우저를 이용하여 서버에 정보를 요청하고 응답을 받습니다.
  • 이때 사용자의 요청이 서버에 도달하기 위해서는 해당 서버의 정보가 필요합니다.
  • 이 때 사용자의 요청이 해당 서버에 정확하게 도달할 수 있게 제공되는 정보가 IP 주소입니다.

웹 서버란?

  • 웹 서버는 인터넷을 통해 HTTP를 이용하여 웹상의 클라이언트의 요청을 응답해주는 통신을 하는 일종의 컴퓨터입니다.
  • 오늘날 우리가 자주 사용하는 이메일이나 SNS 등 대부분의 서비스는 웹 서버를 통해 우리가 사용할 수 있게 되었습니다.
  • 웹 서버의 기본 동작 원리

  1. 브라우저를 통해 HTTP Request로 웹사이트를 웹서버에 요청합니다.
  2. 이후 웹서버는 요청을 승인하고 HTTP Response를 통해 웹사이트 데이터를 브라우저에 전송합니다.
  3. 마지막으로 브라우저는 서버에서 받아온 데이터를 이용해 웹사이트를 브라우저에 그려내는 일을 합니다.
  • 기본적으로 브라우저가 웹서버에 요청을 할때는 항상 GET method로 요청하게 됩니다.

API란?

  • 인터페이스(interface)는 서로 다른 두 개의 시스템, 장치 사이에서 정보나 신호를 주고받는 경우의 접점이나 경계면을 의미합니다. 즉, 사용자가 기기를 쉽게 동작시키는데 도움을 주는 시스템을 의미합니다.
  • API(application programming interface)는 다른 소프트웨어 시스템과 통신하기 위해 따라야 하는 규칙을 정의합니다.
  • 개발자는 다른 애플리케이션이 프로그래밍 방식으로 애플리케이션과 통신할 수 있도록 API를 표시하거나 생성합니다.

RESTful API란?

  • 조금 일반적으로 쉬운 말로 바꾸면, 여러분 서버의 api가 적절하게 http를 준수하며 잘 설계되어있으면 RESTful 하게 설계되어 있다고 생각하시면 좋습니다.
  • Representational State Transfer(REST)는 API 작동 방식에 대한 조건을 부과하는 소프트웨어 아키텍처입니다. REST는 처음에 인터넷과 같은 복잡한 네트워크에서 통신을 관리하기 위한 지침으로 만들어졌습니다. REST 아키텍처 스타일을 따르는 API를 REST API라고 합니다. REST 아키텍처를 구현하는 웹 서비스를 RESTful 웹 서비스라고 합니다.

'Spring공부' 카테고리의 다른 글

Spring MVC란?  (0) 2023.11.08
Lombok과 application.properties  (0) 2023.11.07
테스트 코드  (0) 2023.11.07
HTTP란 무엇일까?  (0) 2023.11.07
그레이들(Gradle)이란 무엇일까?  (0) 2023.11.07