서버에 대해서..

박형석·2022년 2월 25일
1

서버

목록 보기
1/1
post-thumbnail

서버란 무엇인가?

서버(server)는 클라이언트에게 네트워크를 통해 서비스하는 컴퓨터를 의미한다.
말 그대로 클라이언트(사용자)에게 데이터나 리소스를 서빙하는 컴퓨터라고 보면 된다.

흔히 영화에서 서버를 해킹한다고 하면 청소부로 위장해서 서버실에 들어간 다음, USB를 꼽고 서버를 해킹하는 장면이 나온다. 이런 서버에 대해서 오늘 파해쳐보려고 한다.

서버 컴퓨터

나는 IT공부를 하기전에는 서버라는 것이 컴퓨터라고는 생각을 못했다 왜냐하면 집에서 게임을 할 때 서버점검이라는 단어를 많이 봤다. 그래서 아, 서버는 서비스를 제공하는 홈페이지 같은건가보다. 라고만 생각했었다.

서버로 이용되는 컴퓨터는 손바닥만한 컴퓨터에서 집채만한 컴퓨터까지 정말다양하다.

이러한 크기는 제공되는 서비스의 양에서 달라지는데흔히 문서를 조회하는 페이지(위키, DOCs) 같은 홈페이지를 운영하는건 상대적으로 운영하는 데이터양이 적어서 그렇게 큰 컴퓨터가 필요하지 않다.

하지만

구글, 네이버와 같은 많은 사용자들의 서비스와 데이터를 운영해야하는 대기업의 서버는 많은 양의 데이터를 처리해야 하기때문에 대용량의 서버가 필요하다

서버의 종류

1.FTP 서버

대용량 파일 전송을 위한 프로토콜이다.

2.웹 서버


오늘 많이 파해쳐 볼 서버이다.
대표적으로 Apache2, lighttpd, NGINX 등이 있다.
클라이언트로부터 HTTP 요청을 받아들이고, HTML문서와 같은 웹페이지를 있는 그대로 반환하는 서버다.

이 웹페이지에는 그림, CSS, JS를 포함하며, 이런 파일들을 정적 파일이라고 부르고 이런 파일을 브라우저에 그대로 전달하는 역할을 해서 정적 웹 서버 라고 불린다.

3.웹 애플리케이션 서버


웹서버와 마찬가지로 웹페이지를 전달하는 역할을 하기도 한다. 하지만 WAS의 핵심 역할은 웹페이지를 구성하는 동적인 컨텐츠를 생성하거나 업데이트 하는 비즈니스 로직을 수행할 수 있게 한다.

웹애플리케이션의 특징

  • 웹페이지를 구성하는 동적인 요소를 생성하는 서버 사이드 코드가 구동될 수 있는 프로그래밍 언어직 런타임 혹은 스프트웨어 엔진 제공.

  • 웹 애플리케이션 서버의 클라이언트는 애플리케이션 그 자체가 될 수도 있고, 웹 서버나 다른 웹 애플리케이션 서버, 데이터베이스 서버가 될 수도 있다. 따라서 웹 애플리케이션 서버를 사용한다면 경우에 따라 다양한 형태의 아키텍처가 생성될 수 있다.

4.기타

데이터베이스 서버

데이터베이스 서버는 사용자가 데이터베이스에 연결할 수 있도록 해준다. 데이터베이스는 사용자 정보나 사진, 동영상 등에 대한 정보를 담고 있는 서버입니다. 데이터베이스 서버의 종류로는 MySQL, MongoDB, Oracle 등 여러 종류로 또 나뉘어진다.

프록시 서버

프록시 서버는 리소스를 요청하는 클라이언트와 응답으로 리소스를 전달하는 서버 사이에 중계 역할을 하는 서버를 의미한다. 어디에 위치하느냐에 따라 포워드 프록시와 리버스 프록시로 나누어지며, 이러한 프록시 서버가 수행하는 기능으로는 보안, 캐시, 로드밸런싱 등이 있다.

웹서버와 웹 애플리케이션서버

웹서버


웹서버는 보통 HTTP요청과 응답만을 처리하고 클라이언트와 웹서버의 상호작용이 일어난다.

웹 애플리케이션 서버


WAS는 데이터를 동적으로 처리하여 제공하기 위해 만들어진 서버. 동적으로 데이터를 처리하기 위해 DB조회, 여러개의 트랜잭션관리, 비지니스 로직 처리등의 기능이 요구됨.

정적 웹

특징

  • 웹서버에 이미 저장된 html문서를 전송하는 웹페이지.
  • 사용자는 서버에 저장된 데이터가 변경되지 않는 고정된 웹페이지.
  • 모든 사용자는 같은 응답의 결과를 웹페이지에 요청하고 응답받음.
  • 내용이 변하지 않고 고정적임.

예시

http://info.cern.ch/

장점

  • 속도가 빠름 => 요청한 파일만 전송하면 되기 때문에 .
  • 호스팅 서버를 구축하는데에 비용이 적게 듦.
  • 백업, 복원이 쉬움.
    비교적 가벼운 데이터들을 웹으로 다루다보니 속도가 빠르고 라이트한 점이 장점이다.

단점

  • 저장된 정보만 보여줌. 그래서 서비스가 한정적
  • 노잼임. ONLY 읽는 행위만 할 수 있음
  • 추가, 수정, 삭제 등 작업을 서버에서 직접 다운받아 편집 후 업로드로 수정 해줘야 하기 때문에 관리가 힘듦.

동적 웹

특징

  • 요청 정보를 처리한 후에 제작된 html문서를 클라이언트에게 전송.
  • 사용자는 상황, 시간, 요청 등에 따라 달라지는 웹페이지 수신
  • 같은 페이지라도 사용자마다 다른 웹페이지를 서버에 요청하고 받을 수 있음.
  • 우리가 보는 대부분의 웹페이지는 동적 웹페이지

장점

  • 다양한 정보를 조합하여 웹페이지를 제공, 서비스 다양
  • 웹사이트 구조에 따라 추가, 수정, 삭제를 사용자측에서 가능하기 때문에 관리가 쉽다.
  • 관리가 쉬워서 전체적인 사이트 운영비용이 절감될 수 있음.

단점

  • 웹페이지를 전달하기 전에 처리하는 작업이 필요하기 때문에 상대적으로 느림
  • 웹서버외에 추가적으로 처리를 위한 어플리케이션서버가 필요하기 때문에 추가비용 발생.
  • 백업, 복원이 상대적으로 어려움.
profile
Better Than Yesterday

0개의 댓글