< (1) Lambda를 이용한 Serverless Applications (AWS IAM 설정) >
# 서버리스란??
- AWS 서버리스는 인프라 관리를 신경 쓸 필요 없이 애플리케이션과 서비스를 구축하고 실행할 수 있게 해주는 AWS의 클라우드 컴퓨팅 모델
- 서버리스 컴퓨팅에서는 서버 프로비저닝, 유지 보수, 확장 등의 작업이 AWS에 의해 자동으로 관리되며, 개발자는 코드 작성과 비즈니스 로직 구현에만 집중할 수 있어 용이하다.
- 참고 : https://aws.amazon.com/ko/serverless/
# 주요 개념 및 서비스
## AWS Lambda
- AWS Lambda는 이벤트에 의해 트리거되는 코드 조각을 실행할 수 있게 해주는 서비스
- 서버를 프로비저닝하거나 관리할 필요가 없으며, 코드가 실행된 시간만큼만 비용을 지불 (프리티어는 월 1백만건 무료)
- 이벤트 기반 실행 : S3, DynamoDB, Kinesis, SNS, API Gateway 등 다양한 AWS 서비스와 연동되어 특정 이벤트가 발생할 때 자동으로 Lambda 함수를 실행한다.
- 자동 확장 : 요청 수에 따라 자동으로 확장되며, 트래픽 증가 시 더 많은 인스턴스를 할당한다.
## Amazon API Gateway
- Amazon API Gateway는 API를 생성, 배포, 관리할 수 있는 서비스
- Lambda 함수, HTTP 엔드포인트, 다른 AWS 서비스와 통합되어 RESTful 및 WebSocket API를 만들 수 있다.
- 서버리스 API : 서버를 관리하지 않고도 API를 생성하고 관리할 수 있다.
- 트래픽 관리 : API 요청을 처리하고, 인증, 권한 부여, 요청 제한, 캐싱 등을 지원
## AWS Step Functions
- AWS Step Functions는 서버리스 워크플로를 구축하고 조정할 수 있는 서비스
- 상태 머신을 사용하여 작업의 흐름을 정의하고, Lambda 함수, ECS 작업, AWS 서비스와 연동할 수 있다.
- 워크플로 자동화 : 복잡한 작업 흐름을 시각적으로 정의하고 자동으로 실행
- 에러 처리 및 재시도 : 오류 발생 시 자동으로 재시도하며, 오류를 처리하는 로직을 쉽게 추가할 수 있다.
## Amazon DynamoDB
- Amazon DynamoDB는 빠르고 유연한 NoSQL 데이터베이스 서비스
- 서버를 관리할 필요 없이 데이터를 저장하고, 읽고, 쓸 수 있다.
- 서버리스 데이터베이스 : 관리형 NoSQL 데이터베이스로, 자동으로 확장되고 고가용성을 제공
- 무제한 확장 : 자동으로 용량을 조정하며, 초당 수백만 건의 요청을 처리할 수 있다.
## Amazon S3 (Simple Storage Service)
- Amazon S3는 확장 가능하고 신뢰할 수 있는 객체 스토리지 서비스
- 파일 저장, 백업, 데이터 아카이빙 등의 용도로 사용된다.
- 서버리스 스토리지 : 데이터를 안전하게 저장하고, 필요에 따라 접근할 수 있다.
- 이벤트 통합 : S3에 파일이 업로드되거나 변경될 때 Lambda 함수나 다른 서비스와 연동하여 자동으로 작업을 수행할 수 있다.
다음 게시글로 계속~!
'API 개발 > AWS Lambda API 배포' 카테고리의 다른 글
AWS Lambda : (6) Github repositoried 연동 (Personal Access Token) (0) | 2024.05.27 |
---|---|
AWS Lambda : (5) 배포된 서버 포스트맨으로 테스트 (0) | 2024.05.27 |
AWS Lambda : (4) 배포 전 수정 사항 & 한국 서버로 배포 방법 (0) | 2024.05.27 |
AWS Lambda : (3) Node.js & Serverless 설치하기 (0) | 2024.05.25 |
AWS Lambda : (2) AWS 이용을 위한, credentials 만들기 (IAM 설정) (0) | 2024.05.25 |