728x90
아마존 회원 가입
개인으로 생성을 하고 신용카드 정보를 입력한다.
신용카드 정보를 입력하는 이유는 무료 사용량을 초과하는 금액을 청구하기 위해서이다.
https://aws.amazon.com/ko/free
이곳에서 제공량을 얼마나 소진했는지 확인 할 수 있다.
1. 단일 서버 구성
요청을 보내는 클라이언트, 요청을 처리하는 서버가 존재함.
- 클라이언트 - 웹 브라우저(휴대폰 앱, 크롬 등)
- 서버 - 애플리케이션 코드, 데이터베이스
단순한 구성으로 구축이 쉽고 테스트 서버로 많이 사용됨.
장점
- 애플리케이션과 데이터베이스가 같은 서버에서 실행이 되니 별로의 네트워크 설정이 필요없고 로컬 호스트를 대상으로 한다.
단점
- 애플리케이션과 데이터베이스가 같은 자원을 공유하기에 둘 중 하나가 자원을 다 쓰면 서버가 죽어버린다.
- 서버 자원을 효율적으로 사용하기 어렵다. 애플리케이션과 데이터베이스의 속성이 다를 수 있기 때문에 필요 이상으로 고사양 서버를 사용해야 할 수 있음.
- 보안성이 떨어진다. 데이터베이스는 보안상 포트나 IP 등 접속 지점을 최소화 해야하는데 애플리케이션 특성상 다양한 포트와 IP를 사용하기 때문이다.
- 서버의 수를 늘려 자원을 확장하는 스케일 아웃이 힘들다.
2. 애플리케이션, 데이터베이스 서버 분리
장점
애플리케이션과 데이터베이스가 다른 자원을 사용하기 때문에 전제 서비스 장애 확률, 효율적인 자원 사용, 떨어지는 보안성과 같은 단점들이 해결됨
단점
- 구성이 복잡해져 서버 사이의 지연 시간과 네트워크 보안을 고려해야한다.
- 클라이언트에서는 하나의 서버를 바라보고 있기에 스케일 아웃이 힘들다.
3. 서버 단위의 로드 밸런서
클라이언트가 애플리케이션을 실행하는 서버와 직접 통신하는 대신 로드 밸런서라는 서버와 통신하고 그 뒤에 여러 대의 애플리케이션 서버를 두는 방식이다.
장점
- 스케일아웃이 가능해진다.
- 일부 서버에 장애가 생겨도 로드 밸런서에서 정상 서버에만 요청 요구가 가능하다.
단점
- 모든 요청이 로드 밸런서를 지나기기에 로드 밸런서에 장애가 생기면 나머지 서버가 정상이어도 전체 서비스 장애로 이어질 수 있다.
- 구성이 매우 복잡해진다.
4. 서버 내 앱 단위의 로드 밸런서
여러 서버에게 요청을 분산하는 서버 단위의 로드 밸런서 이외에 여러 애플리케이션 프로세서들에 요청을 분산시키는 앱 단위의 로드 밸런서가 추가됐다.
애플리케이션 서버 안에서 똑같은 애플리케이션을 여러 프로세스로 만들어 실행해 놀고 외부에서 들어온 요청을 프로세스 중 하나로 보내주는 역할을 한다.
장점
- 하나의 서버에 여러 개의 프로세스를 실행해 하나의 서버에서 여러 개의 요청을 동시에 처리할 수 있다.
728x90
'기타 > etc' 카테고리의 다른 글
[Search Everything] 파일 검색 프로그램 (0) | 2022.08.14 |
---|---|
[GPU] 윈도우 GPU 사용량 확인 (0) | 2022.08.10 |
컴퓨터 시스템 (0) | 2021.12.20 |
labelImg 사용하기 (0) | 2021.11.22 |
[Pytorch] Summary 사용하기 (0) | 2021.11.12 |