본문 바로가기

etc

[210726] aws ec2, amplify 개념 정리

AWS란?

클라우드 컴퓨팅 서비스를 제공하는 플랫폼

클라우드 컴퓨팅이란?

사용자가 직접 관리할 필요 없이, 데이터 스토리지나 컴퓨터 시스템 리소스를 필요 시 바로 제공(on-demand) 하는 것을 말한다.

(웹 호스팅 / 서버 호스팅 / 클라우드 차이점 : https://library.gabia.com/contents/infrahosting/1311/ )

클라우드 장점

  • 기술적 환경 세팅이나 데이터 분석을 빠르게 할 수 있다.
  • 필요한 만큼 리소스를 유동적으로 확장하거나 축소할 수 있다.
  • ↑로 인해 그만큼의 비용이 절감된다. 기존 서버는 사용자가 많든 적든 똑같은 유지비를 내야 했는데, 클라우드의 경우 사용자가 적다면 그만큼 적은 비용을 낼 수 있다.
  • 빠른 배포가 가능하다.

AWS 특징

  • 클라우드 서비스 시장에서 큰 점유율을 가진다.

  • 서버를 사용한 만큼 요금을 지불할 수 있다.
  • 25개 지역에 위치한 서버를 선택해서 사용할 수 있다. (글로벌 서비스를 할 경우 해당 지역과 가까운 리전을 사용해서 서버 속도 문제를 해결할 수 있다.)
  • 175개 이상의 AWS 서비스를 지원한다.

AWS EC2

안전하고 크기 조정이 가능한 컴퓨터 용량을 클라우드에서 제공하는 웹 서비스다. AWS 서비스 중에서도 가장 대중적으로 사용된다. 운영체제나 CPU, 메모리, Network, 방화벽 등을 설정할 수 있다.

EC2의 가상 컴퓨팅 환경을 인스턴스라고 한다. 인스턴스를 발급받아서 하나의 서버로 사용할 수 있다. 발급받은 서버에 데이터베이스나 파일을 자유롭게 올릴 수 있다.

AWS amplify

모바일 및 프론트 엔드 웹 개발자가 AWS에서 구동되는 풀 스택 애플리케이션을 개발하도록 지원하는 도구 및 서비스 집합이다. AWS 람다를 사용해서 서버리스 환경에서 백엔드를 구성할 수 있다.

( 튜토리얼 : https://aws.amazon.com/ko/getting-started/hands-on/build-web-app-s3-lambda-api-gateway-dynamodb/module-two/ )

서버리스란?

개발자가 서버를 관리할 필요 없이 애플리케이션을 빌드하고 실행할 수 있도록 하는 클라우드 네이티브 개발 모델.

서버가 추상화되어 있으며, AWS의 경우 AWS Lambda를 사용해서 손쉽게 이벤트를 생성할 수 있다.

서버리스 장점

  • 서버를 관리할 필요가 없다. 서버에 대한 전적인 부분을 클라우드 제공 업체가 관리해주며, 애플리케이션이 별도로 호출하고 확장할 수 있는 개별 함수를 만들 수 있다.
  • 서버리스 애플리케이션이 필요에 따라 자동으로 스케일 업 / 다운 되면서 비용을 관리해준다.
  • 서버 구축에 드는 시간을 줄이며, 빠르게 개발을 진행할 수 있다.

서버리스 단점

  • 클라우드 제공 업체에 대한 의존성이 커지게 되며 사용자 시스템의 유연성과 커스터마이징에 영향을 준다.

 

 

- Reference

https://ko.wikipedia.org/wiki/%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C_%EC%BB%B4%ED%93%A8%ED%8C%85

 

https://aws.amazon.com/ko/what-is-aws/

https://www.yna.co.kr/view/GYH20210205000400044

https://aws.amazon.com/ko/getting-started/deep-dive-serverless/?e=gs2020&p=gsrc

https://aws.amazon.com/ko/getting-started/hands-on/build-web-app-s3-lambda-api-gateway-dynamodb/

https://aws.amazon.com/ko/about-aws/global-infrastructure/?nc2=h_ql_le_int_gi

https://aws.amazon.com/ko/what-is-cloud-computing/

https://ko.wikipedia.org/wiki/클라우드_컴퓨팅