개인공부/BE

[Server] AWS 인프라 구축 가이드 - 1 운영 서버 아키텍처들

파뱁 2022. 1. 3. 23:29
728x90

자주 사용되는 운영 서버 아키텍처들에 대해 정리해보자

 

1. 단일 서버

 

 - 가장 기본적인 구성

 - 매우 단순한 구성인 만큼 테스트 서버나 간단한 애플리케이션을 구동할 때 사용

 - 단점

    1. 전체 서비스에 장애가 생길 확률 높음

    2. 서버의 자원을 효율적으로 사용하기 어려움

    3. 보안성이 떨어짐

    4. 서버의 수를 여러대로 늘려서 자원을 확장하는 스케일 아웃(scale-out) 작업이 힘듬

 

2. 애플리케이션/데이터베이스 서버 분리

 

 - 단일 서버 구성에서 DB만 별도로 뺀 구성

 - 전체 서비스 장애 확률, 효율적인 자원 사용 어려움, 보안성 저하 등의 단점이 해결됨

 - 단점

    1. 구성이 복잡해짐

    2. 서버사이의 지연시간과 네트워크 보안을 고려하기 시작해야함

    3. 스케일 아웃은 여전히 힘듬

 

3. 서버 단위의 로드 밸런서

 

 - 클라이언트가 실행 서버와 직접 통신하는 대신 로드 밸런서(서버)와 통신하고, 그 뒤에 여러 대의 애플리케이션 서버를 두는 방식

 - 스케일 아웃이 가능해짐

 - 서비스 장애 최소화 가능

 - 단점

    1. 모든 요청이 로드 밸런서를 통해서 하기 때문에 여기에 장애가 생기면 전체 서비스 장애가 발생할 수 있음

    2. 구성이 매우 복잡해짐

 

4. 서버 내 앱 단위의 로드 밸런서

 - 서버 안의 애플리케이션 단위에서도 로그 밸런서가 추가된 구성

 - 하나의 서버에 여러개의 프로세스를 실행해 하나의 서버에서 여러 개의 요청을 동시에 퍼리할 수 있게 됨

 - 서버 자원을 최대한 사용할 수 있는 만큼 프로세스를 실행해 서버 자원도 효율적으로 사용 가능

728x90
반응형