흰 스타렉스에서 내가 내리지

Amazon API Gateway 기초 본문

AWS

Amazon API Gateway 기초

주씨. 2023. 9. 21. 01:49
728x90

Amazon Lambda를 사용하는 여러 방법 중 하나이다. 

 

"Amazon API Gateway는 어떤 규모에서든 개발자가 API를 손쉽게 생성, 게시, 유지 관리, 모니터링 및 보안 유지할 수 있도록 하는 완전관리형 서비스입니다. API는 애플리케이션이 백엔드 서비스의 데이터, 비즈니스 로직 또는 기능에 액세스할 수 있는 '정문' 역할을 합니다. API Gateway를 사용하면 실시간 양방향 통신 애플리케이션이 가능하도록 하는 RESTful API 및 WebSocket API를 작성할 수 있습니다. API Gateway는 컨테이너식 서버리스 워크로드 및 웹 애플리케이션을 지원합니다." 

 

> API Gateway

- AWS의 서비스 및 외부 서비스를 위한 API를 생성/관리해주는 서비스 

- HTTP/Websocket 프로토콜 지원

- Serverless 서비스 

- 다양한 AWS 서비스와 연동 

    - 예 : HTTP API 형식으로 Lambda 혹은 DynamoDB 연동

    - 애플리케이션 백엔드를 HTTP API로 연결

- API Key를 사용해 보안 관리와 사용량 추적 가능 

- 배포 관리 가능 (Canary 배포 등)

 

 

API Gateway는 클라이언트와 다양한 aws 서비스간에 관문 역할을 한다. 

 

 

 

> Demo - 덧셈 Lambda 함수 HTTP로 만들기

- 덧셈 함수를 HTTP 기반으로 호출할 수 있도록 구성 

 

REST API를 만들어 보자. 

저 곳에 다양한 형식의 API를 정의할 수가 있다. 

이제 생성해준 저 URL로 요청을 하면 API 요청이 잘 된다. 

{url}/dev?key1=1&key2=2 로 요청을 하면, 

위와 같이 빈 화면이 뜰 것이다. 

람다로 들어가서 모니터링 탭에 들어가 CloudWatch를 봐보자. 

람다 함수가 불린 시간이 찍혀 있다. 

 

그럼 람다 함수 코드에 콘솔로그를 찍는 행을 추가해보자. 

console.log(event)를 추가하고 CloudWatch에 들어가보니 요청 값을 그대로 기록하고 있다. 

아 특히 이 부분을 보면, queryStringParameters로 우리 쿼리가 넘어가는 것을 볼 수 있다. 그러면 람다 함수를 수정해야겠지?

자 됐다 이제 API 요청을 해보면, 

음 너무 잘됐다. 

 

 

'AWS' 카테고리의 다른 글

Aurora Serverless의 활용  (0) 2023.09.27
Serverless - JWT  (0) 2023.09.21
AWS Lambda 기초  (0) 2023.09.21
Amazon EventBridge - 이벤트 매칭 규칙  (0) 2023.09.20
Serverless 서비스 기반 지진 알람  (0) 2023.09.20