Coram Deo

서버(Server)란 본문

개발 관련 개념

서버(Server)란

탁탁슝 2024. 7. 6. 20:41

서버의 정의

어떤 컴퓨터가 네트워크로 연결된 다른 컴퓨터에게

  • 서비스를 제공해주면 서버 
  • 서비스를 요청하면 클라이언트

* 서버는 사실 "역할"이기 때문에 한 컴퓨터가 어떤 경우에는 서버가 됐다가 어떤 경우에는 클라이언트가 될 수 있음 !

* 개인 컴퓨터도 서버가 될 수 있음

 

서버는 어디에 있을까

보통은 IDC(Internet Data Center)에 있다.

냉각장치와 함께 수많은 컴퓨터들이 박혀있고 인터넷에 연결되어 있다.

그러나 데이터 센터를 운영하는 것은 매우 비용이 많이 들고, 복잡한 작업이기 때문에 대규모 IT 인프라와 높은 보안 요구사항을 가진 대기업들은 자체 IDC를 운영하지만, 대부분의 초기 스타트업 및 중소기업들은 클라우드 서비스를 이용한다.

 

* 자체 IDC를 보유하면 뭐가 좋을까?

  • 높은 수준의 제어와 맞춤화된 솔루션을 제공받는다. 

* 자체 IDC를 보유한 회사(큰 기업)

  • 예시) 구글, AWS, 카카오, 네이버 등 

그렇다면 클라우드 서비스란 무엇일까? (다음 포스팅에서 총총,,)

 

서버는 언제 쓰나

우리가 유튜브나 네이버에 들어가면 많은 영상과 사진, 글을 볼 수 있다.

이 데이터들이 자신의 컴퓨터 안에 원래부터 있었던 것인가?

→ 아니다 !!

다른 컴퓨터, 즉 '서버'에 들어있는 것이다. 

 

* 서버가 하는 일을 쉽게 예시로 들면 

  • 저장된 글과 사진들을 보여주기
  • 반대로 이것들을 업로드받아서 보관해주기
  • 한 컴퓨터가 톡을 보내면 다른 컴퓨터에 알림을 보내기
  • 위치와 목적지를 받아서, 가는 길과 소요시간을 계산해주기
  • 여럿이 참여할 수 있는 게임을 열어주기

 

서버의 주요 유형

  1. 웹 서버
    • 웹 페이지를 클라이언트(예: 웹 브라우저)에게 전달하는 서버
    • ex)  Apache, Nginx
  2. 데이터베이스 서버
    • 데이터베이스를 호스팅하고 클라이언트가 데이터베이스에 접근하거나 데이터를 조작할 수 있게 한다.
    • ex) MySQL, PostgreSQL
  3. 파일 서버
    • 파일 저장 및 공유를 목적으로 하는 서버
    • 클라이언트는 서버에 저장된 파일을 업로드, 다운로드, 수정할 수 있다.
    • ex) Samba, FTP 서버
  4. 메일 서버
    • 이메일을 송수신하는 서버
    • ex) Microsoft Exchange, Postfix
  5. 게임서버
    • 온라인 게임에서 여러 플레이어가 동시에 접속해 게임을 할 수 있도록 지원하는 서버
  6. 어플리케이션 서버
    • 특정 어플리케이션을 실행하고 클라이언트가 어플리케이션에 접근할 수 있도록 한다.
    • ex) WebLogic, JBoss

 

서버의 주요 기능

  • 데이터 저장 및 관리 : 데이터를 중앙 집중식으로 저장하고 관리하여 여러 클라이언트가 쉽게 접근하고 사용할 수 있도록 한다.
  • 서비스 제공 : 웹서비스, 이메일 서비스, 파일 공유 등 다양한 서비스를 제공한다.
  • 보안 관리 : 데이터와 서비스의 보안을 유지하며, 인증 및 권한 관리를 통해 적절한 사용자만이 접근할 수 있도록 한다.
  • 백업 및 복구 : 데이터를 정기적으로 백업하고 필요시 복구할 수 있는 기능을 제공한다.

 

 

서버에 요청할 수 있는 4가지 방법

1. GET 읽기 요청

2. POST 쓰기 요청

3. PUT 수정 요청

4. DELETE 삭제 요청

 

 

 

출처 https://www.youtube.com/watch?v=R0YJ-r-qLNE

'개발 관련 개념' 카테고리의 다른 글

클라우드 서비스는 무엇일까?  (0) 2024.07.07