API 개발/AWS Lambda API 배포

AWS Lambda : (1) Lambda를 이용한 Serverless Applications

신강희 2024. 5. 25. 16:16
728x90

< (1) Lambda를 이용한 Serverless Applications (AWS IAM 설정) >

 

# 서버리스란??

- AWS 서버리스는 인프라 관리를 신경 쓸 필요 없이 애플리케이션과 서비스를 구축하고 실행할 수 있게 해주는 AWS의 클라우드 컴퓨팅 모델

- 서버리스 컴퓨팅에서는 서버 프로비저닝, 유지 보수, 확장 등의 작업이 AWS에 의해 자동으로 관리되며, 개발자는 코드 작성과 비즈니스 로직 구현에만 집중할 수 있어 용이하다.

- 참고 : https://aws.amazon.com/ko/serverless/

 

서버리스 컴퓨팅 – Amazon Web Services

웹 애플리케이션 웹 애플리케이션 구축 등록된 사용자가 항목을 생성하고 업데이트하고 보고 삭제할 수 있는 단순한 ‘할 일 목록’ 웹 앱을 구축합니다. 이벤트 기반 웹 애플리케이션에서는 A

aws.amazon.com

 

# 주요 개념 및 서비스

## 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 함수나 다른 서비스와 연동하여 자동으로 작업을 수행할 수 있다.

 

다음 게시글로 계속~!

 

반응형