AWS Lambda

AWS Lambda

AWS Lambda

입문

한 마디로

서버 없이 코드를 실행하는 마법 버튼

#서버리스#함수#API#이벤트#백엔드
관련 서비스

비유로 이해하기

Lambda는 누군가 버튼을 누를 때만 켜지는 기계예요. 평소에는 아무 비용도 들지 않다가, 요청이 오면 코드가 실행되고 결과를 돌려줘요. 서버를 관리할 필요가 전혀 없어요.

언제 쓰나요?

🔌

간단한 API 만들기

API Gateway + Lambda 조합으로 서버 없이 REST API를 만들 수 있어요. 트래픽이 적으면 거의 무료예요.

🖼️

이미지 자동 처리

S3에 이미지가 업로드되면 자동으로 Lambda가 실행돼서 썸네일을 생성하거나 포맷을 변환할 수 있어요.

예약 작업 (Cron)

EventBridge 스케줄러와 연결해서 매일 밤 데이터 정리, 주간 리포트 생성 같은 예약 작업을 돌릴 수 있어요.

요금 예시

Lambda는 코드가 실행된 횟수와 시간만큼만 돈을 내는 방식이에요. 한 달에 100만 번 실행까지 무료이고, 그 이후에도 매우 저렴해요. 개인 프로젝트 수준이라면 거의 무료로 쓸 수 있어요. 프리 티어는 12개월이 아니라 영구 무료예요!

자주 묻는 질문

Lambda의 실행 시간 제한은?

최대 15분(900초)까지 실행할 수 있어요. 그 이상 걸리는 작업은 Step Functions로 여러 Lambda를 연결하거나, ECS/Fargate를 고려하세요.

콜드 스타트가 뭔가요?

Lambda가 오랫동안 호출되지 않으면 실행 환경이 종료돼요. 다음 호출 시 환경을 다시 만드는 시간(0.5~2초)이 콜드 스타트예요. Provisioned Concurrency로 해결하거나, 가벼운 런타임(Node.js, Python)을 사용하면 줄일 수 있어요.

Lambda에서 DB에 접속해도 되나요?

가능하지만, Lambda가 동시에 수백 개 실행되면 DB 커넥션이 폭주할 수 있어요. RDS Proxy를 사용해서 커넥션 풀링을 하거나, DynamoDB 같은 서버리스 DB를 쓰는 게 권장됩니다.