목차
집약형 아키텍처
- 대형 컴퓨터를 이용해서 모든 업무 처리 (집중형)
- 장점
- 한 대의 대형 컴퓨터만 있으면 되므로 구성이 간단 - 단점
- 대형 컴퓨터의 도입 비용과 유지 비용이 비쌈
- 확장성에 한계
분할형 아키텍처
- 여러 대의 컴퓨터를 조합해서 하나의 시스템을 구축
- 장점
- 낮은 비용으로 시스템을 구축 - 단점
- 대수가 늘어나면 관리 구조 복잡
- 한 대가 망가지면 영향 범위를 최소하기 위한 구조 검토
서버란?
물리서버와 논리 서버로 구성
컴퓨터 자체(하드웨어)를 가리크는 물리 서버
컴퓨터에서 동작하고 있는 소프트웨어 논리 서버 (웹서버, DB서버)
분할형 아키텍처는 역할 분담에 따라 구분
- 수직 분할형 아키텍처
- 수평 분할형 아키텍처
수직 분할형 아키텍처
- 역할에 따라 위 또는 아래 계층으로 나뉨
- 2가지 존재
- 클라이언트-서버형 아키텍처
- 3계층형 아키텍처
클라이언트-서버형 아키텍처
- 서버 1개에서 모든 클라이언트 처리를 접수한다.
- 클라이언트 측에 전용 소프트웨어를 설치해야 한다.
- 서버 처리에 집중되면 확장성에 한계 발생
- 이런 단점을 극복하고자 3계층형 아키텍처가 나옴
3계층형 아키텍처
- 클라이언트-서버형을 발전 시킴
- 프레젠테이션 계층 / 애플리케이션 계층 / 데이터 계층 3층 구조로 분할하여 서버 부하 집중을 개선
- 스프링의 MVC와 비슷
- 프레젠테이션 계층 : 사용자의 요청을 받아서 화면에 표시(웹 서버)
- 애플리케이션 계층 : 무엇을 할지 판단해서 필요한 경우 데이터 계층에 질의 (애플리케이션(AP)서버)
- 데이터 계층 : 데이터 입출력을 담당한다.(DB서버)
수평 분활형 아키텍처
- 수직 분활형 아키텍처를 하나 더 늘려 확장성, 안정성을 향상시키는 것
- 단순 수평 분할형 아키텍처 & 공유형 아키텍처로 나뉨
단순 수평 분할형 아키텍처
- 샤딩 또는 파티셔닝이라고 불린다.
- 잘 안쓰임 (본사, 동탄 따로 서버쓰는 꼴) -> 공유형 아키텍처
- 장점
- 수평으로 서버를 늘리기 때문에 확장성이 향상된다.
- 분할한 시스템이 독립적으로 운영되므로 서로 영향을 주지 않는다.
- 단점
- 데이터를 일원화해서 볼 수 없다.
- 애플리케이션 업데이트는 양쪽을 동시에 해 주어야 한다.
- 처리량이 균등하게 분할돼 있지 않으면 서버별 처리량에 치우침이 생긴다.
공유형 아키텍처
공유형은 단순형과 달리 일부 계층에서 상호 접속이 이루어진다.
- 장점
- 수평으로 서버를 늘리기 때문에 확장성이 향상된다.
- 분할한 시스템이 서로 다른 시스템의 데이터를 참조할 수 있다.
- 단점
- 분할한 시스템 간 독립성이 낮아진다.
- 공유한 계층의 확장성이 낮아진다.
아키텍처 트랜드
오픈화(분산) -> 가상화/클라우드(집중) -> 엣지 컴퓨팅(분산)
* 엣지 컴퓨팅 : 최신 키워드, 지리적으로 가까운 위치에 있는 서버로 처리하고, 처리 결과만 중앙으로보내는 아키텍처
엣지 컴퓨팅에서는 관리를 위한 수고를 줄이면서, 서버를 분산하는 것이 중요하다.
지리 분할에 따른 아키텍처
- 스탠바이형 아키텍처와 재해 대책형 아키텍처
스탠바이형 아키텍처
- 액티브 - 스탠바이로 구성
- 액티브 측이 고장나면 스탠바이를 이용
- 단점은 한 쪽이 계속 놀고 있는 상태가 되기 때문에 양쪽 서버로를 교차이용 하는 경우도 많음
재해 대책형 아키텍처
- DR (Disater Recovery) 구성으로 재해용 서버를 똑같이 구성함
- 평상시에는 일반적인 데이터 서버를 이용하고 재해가 발생하였을대 부산 측 시스템을 이용
'Back-end > Infra' 카테고리의 다른 글
그림으로 공부하는 IT 인프라 구조 (0) | 2022.08.10 |
---|---|
도커란? (0) | 2022.03.13 |