728x90
반응형
# Lambda Handler란?
간단 정리
Lambda 함수 호출시 Lambda는 핸들러 메서드를 실행한다.
그리고 당연한 이야기지만 하나의 람다에는 하나의 핸들러만 존재한다. (main 메소드?, 진입점 이라고 이해라면 되려나?...)
아래의 # 예제 코드 1에서 보면 3개의 파라미터(인수가 존재한다.)
event:
첫 번째 인수는 호출자로부터의 정보가 포함된 event 객체.
이 정보는 함수를 호출할 때 호출자가 JSON 형식 문자열로 전달하고,
런타임은 이 정보를 객체로 변환한다.
context:
두 번째 인수는 컨텍스트 객체이며, 호출, 함수 및 실행 환경에 대한 정보가 포함되어 있다.
callback:
세 번째 인수는 callback이다. 비동기 응답을 전송하기 위해 필요하며,
위 코드와 같이 async 키워드를 이용해 promise 객체를 대신하서 사용할 수 있다.
- 람다 핸들러란 무엇이냐면,
Lambda 함수의 핸들러는 이벤트를 처리하는 함수 코드의 메서드입니다.
함수가 호출되면 Lambda는 핸들러 메서드를 실행합니다.
핸들러가 존재하거나 응답을 반환할 때, 또 다른 이벤트를 처리하기 위해 사용할 수 있게 됩니다.
# 람다 함수가 실행되는 구조
- 아래 코드를 버면 exports.handler라는 이름의 디폴트 함수가 있는데, 람다를 실행하면 이 exports.handler 메소드가 호출이 되어 코드가 실행되는 구조이다.
# 예제 코드 1
exports.handler = async (event, context) => {
// TODO implement
const response = {
statusCode: 200,
body: JSON.stringify('Hello from Lambda!'),
};
return response;
};
# 예제 코드 2
exports.handler = async (event) => {
// TODO implement
const response = {
statusCode: 200,
body: JSON.stringify('Hello from Lambda!'),
};
return response;
};
# 람다 디버깅
AWS 서비스인 CloudWatch에서 lambda 함수에 대한 로그를 확인하면 된다.
람다 서비스 상단 메뉴바에서 모니터링 탭에 들어가 CloudWatch 콘솔 메뉴로 이동한다. 람다 로그는 CloudWatch에서 로그 스트림 이라는 곳에 쌓여있다.
# 예제 코드 (파이썬)
https://may9noy.tistory.com/469
# 추가 사례 링크
- AWS Lambda로 S3에 파일 저장하기
https://jinyes-tistory.tistory.com/206
- 끝 -
728x90
반응형
'AWS Lambda ƛ > Lambda' 카테고리의 다른 글
AWS Lambda & API Gateway & Route53 사용하기 (0) | 2024.02.06 |
---|---|
Lambda@Edge란? (0) | 2024.01.11 |
AWS Lambda에 API Gateway를 연결하여 간단한 웹 서버 만들기 (0) | 2022.04.25 |
AWS API Gateway - RESTful API 생성하기 with Lambda (0) | 2021.12.24 |
AWS Lambda에서 특정 문장을 출력하기 (0) | 2021.12.24 |