AWS Lambda 사용기

taewo·2019년 3월 8일
1


1. aws 접속 lambda 함수 생성


2. 옵션 중 하나를 선택해야 한다. 블루프린트 사용은 이미 만들어져 있는 템플릿을 이용해서 lambda를 생성하는 것이다.
우리는 lambda 함수를 새로 생성해보자.


3. 기본정보에 함수이름 함수를 작성할 언어를 선택할 수 있다. 필자는 node.js 8.10으로 진행.
혼자 테스트용이기에 권한은 따로 부여하지 않고 함수를 생성한다.

테스트 객체를 임의로 생성하여 lambda를 테스트할 수 있다.
기본값으로는 아래와 같이 되어 있다.

{
  "key1": "value1",
  "key2": "value2",
  "key3": "value3"
}

하단에는 lambda 함수를 코드로 작성할 수 있게 되어 있는데 handler,event,context 에 대해 알아보자

  • handler
    - lambda 함수가 시작되는 메인 함수.
    • 매개변수 event, context를 받는다.
  • event
    - node.js의 request 객체
    • lambda 함수에서 전달되는 매개변수는 event를 통해 받음
  • context
    - node.js의 response 객체
    • 결과 리턴할 때 done(), succeed(), fail() 활용할 수 있음.

context.succeed(object result)
결과가 성공했을때 리턴해주는 함수.
object는 json형태

context.fail(Error error)
결과가 실패했을때 리턴해주는 함수.
여기서 발생한 에러는 CloudWatch에 로그가 남겨짐

context.done(Error error, Object result)
결과가 성공이든 실패든 어떤 경우에도 쓰일 수 있는 함수.
첫번째 파라미터인 error가 null이면 성공, 그렇지 않으면 실패로 판단

참고자료: https://gun0912.tistory.com/60

4개의 댓글

comment-user-thumbnail
2019년 3월 8일

좋은 글 감사합니다. 저는 오래전부터 람다를 사용해보고 싶은데 여전히 메커니즘에서 궁금함이 있습니다. Hello world 예제나 API를 구현하는건 이해하지만 일반적인 홈페이지는 어떤식으로 구현할 수 있을까요? view를 위한 템플릿 파일이나 css파일 등을 일반적인 서버에서는 하나로 묶어서 처리하지만 람다는 인라인 코드로만 구성된것 같은데 이런 부분은 잘 모르겠습니다.

2개의 답글