사회에는 다양한 시스템이 작동하고 있다. 어떠한 시스템이든 일정한 규모의 역할을 하기 우해서는 반드시 서버가 있어야 한다.
대부분의 시스템은 외관인 하드웨어를 보면, 서버와 산하의 컴퓨터, 그리고 이를 연결하는 네트워크 기기로 구성되며, 서버는 그 중 중심적 역할을 한다.
소프트웨어를 보면 "무엇을 하고 싶은가, 무엇을 시키고 싶은가"에 따라 애플리케이션 소프트웨어가 움직인다.
서버는 사령탑으로서의 존재라고도 볼 수 있다.
1. 클라이언트의 요청에 대응하여 처리하는 형태
2. 서버에서 능동적으로 처리하는 형태
3. 높은 성능을 활용하는 형태
시스템은 산하의 클라이언트 PC 등의 요청에 대응하는 처리를 한다.
클라이언트가 서버에 요청하는 것부터 시작되고, 서버는 요청받은 처리를 수동적으로 실행한다.
특징
서버 한 대에 클라이언트는 여러 대
서버와 클라이언트가 공통된 소프트웨어를 이용하는 일이 많다.
클라이언트가 서버에 수시로 요청을 보낸다.
서버에서부터 처리를 시작하고 실행한다.
특징
서버 한 대에 클라이언트 여러 대
서버와 클라이언트에서 반드시 공통된 소프트웨어를 이용하는 것은 아니다.
서버 측에서 처리 시점을 정하여 실행한다.
운용 가시 서버: 다른 서버와 네트워크 기기 등의 상황을 감시한다.
BPMS, RPA서버: 프로세스의 시작과 종료 순서를 관리
서버는 PC와 달리 높은 성능을 가지고 있기에 용도에 따라서 성능이나 규모를 바꿀 수 있다.
기존의 클라이언트 - 서버 형태를 반드시 취하는 것은 아니다.
특징
서버와 클라이언트의 구성과 서버 단독에 가까운 구성도 있다.
서버 측에서 독자적인 처리를 실행한다.
PC에서는 할 수 없는 높은 성능이 요구된다.
AI: 사람이 했던 각종 판단이나 분석, 사람보다도 많은 학습 데이터가 필요
빅데이터: 다양한 대량의 데이터, 고속으로 분석, 구조화 데이터와 비구조화 데이터를 조합해서 분석하기도 한다.
<애플리케이션의 시점>
입출력을 중요시 하는 시스템
입력한 데이터에 대해 처리 결과를 신속하게 돌려주는 시스템
순발력을 중시한다.
집계나 분석을 중요시하는 시스템
개별적으로 입력된 데이터의 집계나 분석을 중요시하는 시스템
지구력을 중시한다.
<서버의 구조>
PC에서는 주로 표시 성능이 중요하다.
표시 성능이란 자신이 두드린 키보드의 키나 마우스 클릭 등을 정확하게 그리고 실시간으로 표시하는 것
이를 전제로 다양한 애플리케이션 소프트웨어의 처리가 이루어진다.
서버는 표시 성능보다 I/O 성능을 중시한다.
서버에서는 다양한 처리가 적절히 이뤄지고 있는지가 중요하다.
입력을 바탕으로 처리 결과를 출력하며, 끊임없이 I/O를 실행하는 가운데 시스템 전체의 상황, 부하를 감시하고 나아가 자신의 성능을 발휘할 수 있는지를 생각한다.
서버는 PC보다 각 유닛의 성능이 더 뛰어나다.
처리량이 PC보다 훨씬 많기 때문에 성능과 신뢰성이 더 우수한 CPU, 메모리, 디스크 등으로 구성된다.
유닛들의 탑재 수량이나 용량도 많아진다.
대표적인 3가지
Windows Server
Windows PC와 같은 사용자 인터페이스로 조작할 수 있어 비교적 이해하기 쉽다.
기업과 단체에서 필요로 하는 기능이 미리 패키지로 되어 있고 마이크로 소프트의 지원도 있다.
Linux
커맨드를 사용하는 사람이 아직 많지만, 최근에는 다양한 GUI 툴이 제공된다.
무료 모듈이나 필요한 기능을 쌓아갈 수 있기에 비교적 간단하고 저렴하게 시스템을 구축할 수 있다.
UNIX 계열
타워
랙 마운트
전용 랙에 한 대씩 설치하는 형태로 확장성과 내장애성이 뛰어나다.
랙 안엣 숫자를 늘려 확장할 수 있고, 전용 랙으로 보호되므로 장애에도 강하다.
블레이드, 고밀도
랙 마운트의 파생 형태
블레이드는 랙 마운트가 박형화 또는 소형화된 형태
고밀도는 랙 마운트가 더욱 진화한 형태
주로 대량으로 서버를 이용하는 데이터 센터용 형태이다.
공통 부품은 랙 쪽에 두고, 얇게 소형화된 서버를 좁은 공간에 집중적으로 설치할 수 있게 되어 있다.
유닛별로 각각 전용 케이스를 가지고 있다.
메인 프레임
CPU, 메모리, 디스크 등의 케이스가 분리되어 있다.
거대한 양의 데이터를 다루는 계산에 사용되는 대형 컴퓨터
슈퍼 컴퓨터
컴퓨터의 정점
최고의 성능을 추구하며, 메인프레임보다 크다.
가능한 빠른 속도로 데이터를 처리하는 데 사용되는 강력한 컴퓨터
최상위(메인 프레임, 슈퍼 컴퓨터)를 제외한 상위의 개념
다중화 장치가 충실한 형태를 상위로 한다.
x86 서버를 표준으로, UNIX계 등을 상위로 한다.
상위와 표준을 판단하는 표인트
형태는 제외하고 우선 CPU와 OS를 확인한다.
차이가 없으면 다중화 장치의 충실도로 확인한다.
데이터 센터
인터넷을 통해 데이터 센터의 서버에 접속
온프레미스
기업이나 단체가 있는 층의 구석에 있는 랙 등에 설치
정보 시스템 부문에서 관리하는 전용 층이나 랙에 설치
클라우드는 자사의 서버와 관련된 IT 자산을 갖지 않고, 인터넷 건너편에서 서비스를 이용하는 개념을 가리키는 말이다.
클라우드는 다양한 시스템의 기반을 이루는 환경이 되고 있다.
클라우드는 서버의 모습이 보이지 않으므로 존재를 의식하지 않는다.
클라우드 서비스를 제공하는 사업자의 데이터 센터에 인터넷을 경유해 액세스한다.
Saas (Software as a Service)
Iaas (Infra Structure as a Service)
OS 외에는 아무 것도 설치되지 않은 서버를 계약
사용자는 애플리케이션이나 관련된 데이터베이스 등의 미들웨어를 직접 설치
Paas(Platform as a Service)
IaaS와 SaaS의 중간 형태
데이터베이스 등의 미들웨어와 개발 환경 등을 포함
장점
유지 보수 불필요
특히 SaaS는 모두 포함하고 있어 사용하기만 하면 되므로 간단하다.
서버나 네트워크 기기의 구입이나 유지 보수를 생각할 필요는 없다.
유연한 대응
비교적 낮은 비용
단점
클라우드를 사용하면 그 안에서 흐르는 데이터는 서비스 사업자의 서버에 들어가게 된다.
높은 보안 수준이 요구되는 데이터를 외부에 내보내도 되느냐 하는 문제가 발생한다.
소프트웨어를 계층적으로 표현할 때 OS와 애플리케이션 사이에서 OS의 확장 기능이나 애플리케이션에 공통되는 기능을 제공하는 역할
대표적으로는 DBMS, 웹 서비스 등이 있다.