AWS Lambda
Lambda는 서버를 예약해 두지 않고 이벤트가 올 때만 짧게 코드를 실행하는 함수 런타임입니다. 요청이나 파일 업로드, 스케줄 같은 신호를 받아 필요한 계산만 수행하고 끝나는 실행 계층입니다.
▶아키텍처 다이어그램
🔗 관계 다이어그램점선 애니메이션은 데이터 또는 요청의 흐름 방향을 나타냅니다
이미지 후처리나 웹훅 처리처럼 몇 초만 일하는 코드를 위해 서버를 하루 종일 켜두면 대부분 시간은 빈 상태 비용만 냅니다. 이벤트가 몰릴 때마다 서버 대수를 미리 맞춰야 하면 작은 작업도 운영 일이 됩니다.
작은 작업도 VM 위에 배포하던 방식은 트래픽이 없을 때도 비용이 들고 패치와 스케일링을 계속 챙겨야 했습니다. 그래서 이벤트가 오면 필요한 만큼만 코드를 실행하는 서버리스 모델인 Lambda가 등장했습니다.
Lambda는 함수 단위로 코드를 배포하고, API Gateway·S3·EventBridge 같은 이벤트 소스가 들어오면 실행 환경을 만들어 처리합니다. 실행이 끝나면 인프라를 직접 관리하지 않아도 되고, 로그와 메트릭은 CloudWatch로 모입니다.
Lambda와 EC2는 둘 다 코드를 실행하지만 운영 방식이 다릅니다. Lambda는 요청이나 이벤트가 있을 때만 짧게 실행되고, EC2는 서버를 계속 유지하면서 프로세스를 직접 관리합니다. 짧은 이벤트 처리와 사용량 기반 실행이 핵심이면 Lambda를 보고, 장시간 실행과 서버 수준 제어가 필요하면 EC2를 보면 됩니다.
가벼운 API 백엔드, 업로드 후처리, 스케줄 작업, 이벤트 반응 로직처럼 요청 단위 작업에 적합합니다. 한 번 실행이 15분을 넘기거나 실행 사이에 상태를 유지해야 하는 워크로드에는 맞지 않습니다.