[nodejs] AWS Lambda로 API 게이트웨이 통합하기
이번에는 AWS Lambda를 사용하여 API Gateway에서 만든 REST API와 통합하는 방법에 대해 알아보겠습니다. Lambda를 사용하면 서버리스 아키텍처를 구축하고 API 엔드포인트를 만들 수 있습니다.
AWS Lambda 소개
AWS Lambda는 코드를 실행할 수 있는 서버리스 컴퓨팅 서비스로, 사용량에 따라 비용이 청구됩니다. 이를 사용하여 특정 이벤트가 발생했을 때 코드를 자동으로 실행하거나 API 호출에 대한 응답으로 사용할 수 있습니다.
API Gateway와의 통합
API Gateway를 사용하면 REST API를 빠르게 생성하고 배포할 수 있습니다. Lambda 함수를 사용하여 이 REST API와 통합할 수 있으며, 클라이언트 요청에 대한 응답으로 Lambda 함수가 실행됩니다.
아래는 API Gateway에서 Lambda 함수와의 통합을 설정하는 간단한 예제입니다.
{
"swagger": "2.0",
"info": {
"version": "1.0",
"title": "Sample API"
},
"basePath": "/v1",
"schemes": [
"https"
],
"paths": {
"/hello": {
"get": {
"produces": [
"application/json"
],
"responses": {
"200": {
"description": "OK"
}
},
"x-amazon-apigateway-integration": {
"uri": "arn:aws:apigateway:us-east-1:lambda:path/2015-03-31/functions/arn:aws:lambda:us-east-1:123456789012:function:HelloFunction/invocations",
"httpMethod": "POST",
"type": "aws_proxy"
}
}
}
}
}
Lambda 함수 작성
아래는 간단한 Node.js로 작성된 Lambda 함수의 예제입니다.
exports.handler = async (event) => {
return {
statusCode: 200,
body: JSON.stringify('Hello from Lambda!'),
};
};
결론
AWS Lambda를 사용하여 API Gateway와 통합하면 서버리스 아키텍처를 쉽게 구축할 수 있습니다. 이를 통해 비용을 절감하고 유연한 확장이 가능한 서버리스 솔루션을 제공할 수 있습니다.
이 통합은 Node.js를 비롯한 다양한 언어로 작성된 Lambda 함수를 통해 가능하며, REST API를 쉽게 구축하고 운영할 수 있습니다.
더 자세한 정보는 AWS 공식 문서를 참고하시기 바랍니다.