복습 9일 차
aws 서버리스 프로젝트를 구축하기 위한 기본 서비스를 복습한다. S3, Lambda, SNS, Cloud Front에 대해 알아본다.
S3
클라우드 스토리지 | 웹 스토리지| Amazon Web Services
Amazon Simple Storage Service(Amazon S3)는 업계 최고의 확장성, 데이터 가용성 및 보안과 성능을 제공하는 객체 스토리지 서비스입니다. 즉, 규모와 업종에 상관없이 고객이 이 서비스를 이용하여 데이터
aws.amazon.com
Simple Storage Service의 약자로 파일 서버 서비스다. 일반적인 파일서버는 트래픽에 따라 하드웨어 업그레이드가 불가피한데 S3는 이런 작업을 신경 쓸 필요가 없다. 또 파일에 대한 접근 권한을 지정 할 수 있어 악의적인 파일 사용을 막을 수 있다.
S3 큰 특징은 다음과 같다.
- 저장할 수 있는 파일의 수가 제힌이 없으며 최소 1바이트에서 최대 5TB의 데이터를 저장하고 서비스 할 수 있다.
- 파일에 인증을 붙여서 무단으로 엑세스 하지 못하도록 할 수 있다.
- REST, SOAP 인터페이스를 제공한다.
- 데이터를 여러 시설에서 중복으로 저장해 데이터의 손실이 발생할 경우 자동으로 복원한다.
- 버전관리 기능을 통해서 사용자에 의한 실수도 복원이 가능하다.
서버리스 프로젝트에서는 이미지 저장소와 html, js, css 파일을 저장하여 웹 호스팅 목적으로 사용이 가능하다. 웹 호스팅 목적으로 사용하려면 S3와 cloude front를 함께 사용하여야 한다.
Cloude Front
CDN 서비스 | CloudFront | Amazon Web Services
Amazon CloudFront는 개발자 친화적 환경에서 짧은 지연 시간과 빠른 전송 속도로 데이터, 동영상, 애플리케이션 및 API를 전 세계 고객에게 안전하게 전송하는 고속 콘텐츠 전송 네트워크(CDN) 서비스
aws.amazon.com
CDN이라고 불리며 캐싱을 통해 사용자에게 더 빠르게 파일을 전송하는 것을목적으로 한다. 전세계 edge server가 존재하고 client와 가장 가까운 edge server를 찾아 전송하는 서비스다.
주로 이미지, 정적파일인 download distribution 방식과 스트리밍을 위해 사용될 수 있는 동영상 콘텐트인 streaming distribution 방식을 지원한다.
정적파일을 cloud front로 배포하는 작업을 aws에서 작성한 가이드다.
aws.amazon.com/ko/blogs/korea/amazon-s3-amazon-cloudfront-a-match-made-in-the-cloud/
실전 Amazon S3와 CloudFront로 정적 파일 배포하기 | Amazon Web Services
많은 사용자들이 이용하는 웹사이트 및 모바일 앱에는 이미지, 동영상 또는 음악 같은 파일이나 .css 또는 .js 같은 정적 파일을 가지고 있습니다. 콘텐츠 배포 네트워크(CDN) 서비스가 등장하기 전
aws.amazon.com

SNS (simple notification servcie)
푸시 서비스 | SNS 푸시 알림 서비스 | Amazon Web Services
Pub/Sub SMS 모바일 푸시
aws.amazon.com
정보가 등록되고 구독하는 방식으로 aws 서비스간 데이터를 공유하는 기능을 갖춘 서비스다. 그 예로 lambda 이용시 lambda(a) 실행 직후 상태값을 전달하고 labmda(b)에서 사용 할 수 있게 설정 할 수 있는 방법으로 sns를 사용하는 방법이 있다.
labmda(a) 에서 sns에 상태값을 게시하는 기능을 추가한 후 lambda(b)에서 sns 게시 트리거를 설정 하여 labmda(a), lambda(b)를 유동적으로 사용 할 수 있다.

Lambda
aws.amazon.com/ko/lambda/features/
AWS Lambda – 제품 기능
AWS Lambda를 사용하면 새로운 언어나 도구, 프레임워크를 배울 필요가 없습니다. 기본 라이브러리뿐 아니라 모든 타사 라이브러리를 사용할 수 있습니다. 또한 모든 코드(프레임워크, SDK, 라이브
aws.amazon.com
함수 단위로서 실행되는 서버를 제공하는 서비스다. 서버를 관리할 필요가 없고 사용중이 아닐 때는 비용이 발생하지 않으며 요청이 있을 때만 비용이 측정된다. 함수마다 세밀한 성능 측정이 가능하고 스펙을 달리하여 일관선 성능 설정이 가능하다. 서버리스 프로젝트에서는 api gateway와 lambda를 사용하여 api서버를 구축 하였다.

28일 마무리
서버리스 프로젝틀 위한 기본적인 구성 서비스를 정리했다. 웹호스팅에 사용될 s3, 비용절감을 위한 cloud front 그리고 요청이 있을때 실행될 lambda와 lambda간의 정보공유를 위한 sns를 갖춘다면 관리할 서버 없이 서버 구축이 가능하다. aws의 무궁구진한 서비스와 각 서비스를 어떻게 유기적으로 사용할지는 많은 공부가 필요하다고 생각되며 지속적으로 공부를 이어가야겠다.
현재 수강 중인 강의는 아래와 같다
올인원 패키지 : AWS/Docker 클라우드 서버 구축👉https://bit.ly/3bFlm0e
'AWS' 카테고리의 다른 글
ubuntu 18.04 Mysql 완전삭제하기 (0) | 2020.12.14 |
---|---|
패스트캠퍼스 올인원 패키지 : AWS/Docker 클라우드 서버구축👉AWS강의 챌린지 참여 후기 (0) | 2020.12.08 |
[패스트캠퍼스 수강 후기] 올인원 패키지 : AWS/Docker 클라우드 서버구축👉AWS강의 100% 환급 챌린지 27 회차 미션 (0) | 2020.11.28 |
[패스트캠퍼스 수강 후기] 올인원 패키지 : AWS/Docker 클라우드 서버구축👉AWS강의 100% 환급 챌린지 26 회차 미션 (0) | 2020.11.27 |
[패스트캠퍼스 수강 후기] 올인원 패키지 : AWS/Docker 클라우드 서버구축👉AWS강의 100% 환급 챌린지 25 회차 미션 (0) | 2020.11.26 |