코드 그라데이션
[사전 지식] AWS 본문
AWS란
- 지금까지는 로컬에서 실행. 이렇게 로컬에서만 실행하고 테스트하면 휴대폰이나, 다른 PC에서 접속할 수 없다.
- 만약 다른 PC에서도 이 서비스에 접속하려면 실제 서버에 스프링 부트 서버를 올려 실행해야 한다.
- 이런 행위를 실무에서는 배포라고 한다.
배포는 서버용 PC를 구매해서 배포하는 방법과 AWS와 같은 클라우드 컴퓨팅 서비스를 이용해 배포하는 방법이 있다.
AWS 서비스로 나의 애플리케이션 배포하기
[그림] AWS 서비스의 대략적인 구조
# 가상의 PC 또는 서버 EC2
- EC2는 AWS에서 제공하는 클라우드 컴퓨팅 서비스로 가상의 PC, 즉, 서버 한 대를 임대하는 서비스.
# 유동적으로 EC2를 관리해주는 오토 스케일링 그룹
- 그런데 앞 그림을 보면 EC2는 3개이다. 왜?
내 서비스가 인기가 많아져서 사용자의 요청이 많아지면
서버 한 대로는 처리가 어렵기 때문에 여러 개의 EC2가 필요하다.
- 하지만 늘 여러 대가 대기할 수는 없다. 그럴 때 필요한 서비스가 오토 스케일링 그룹이다.
이 서비스는 사용자의 요청 횟수에 따라 EC2를 늘이거나 줄인다.
# 요청을 분산시켜주는 로드 밸런서
- 그리고 요청들이 한 경로로 들어오면 곤란하다. 그래서 요청들을 분산시켜야 하는데, 이 역할을 로드 밸런서가 수행한다. - 또한 로드 밸런서를 만들 때는 요청을 어디로 분산시킬지 그룹을 정해야 한다. 이러한 그룹을 대상 그룹이라고 한다.
# 데이터 저장소 RDS
- 그리고 데이터를 저장할 저장소가 필요하다. 즉, 데이터베이스도 클라우드에 올려야 한다는 뜻이다.
- AWS에서 제공하는 클라우드 데이터베이스 서비스는 RDS, Redshift, DocumentDB, ElastiCache 등이 있다.
여기서 우리는 그중에서 범용 데이터베이스인 아마존 관계형 데이터베이스 서비스를 사용한다.
Elastic Beanstalk
'SpringBoot [예제] 블로그 만들기 > AWS-Beanstock' 카테고리의 다른 글
서비스 배포하기 (0) | 2023.10.24 |
---|---|
Elastic Beanstock로 서버 구축하기 (0) | 2023.10.24 |