Amazon API Gateway 기능

Amazon API Gateway를 사용해야 하는 이유

Amazon API Gateway는 어떤 규모에서든 개발자가 API를 손쉽게 게시, 유지 관리, 모니터링, 보호 및 운영할 수 있도록 지원하는 완전관리형 서비스입니다. 이것은 규모에 따라 API를 안전하고 안정적으로 실행하는 데 관련된 모든 획일적인 작업을 처리하는 종량 과금제 서비스입니다.

모바일 디바이스의 확산과 IoT(사물 인터넷)의 증가로 인해 백엔드 시스템 및 데이터가 API를 통해 애플리케이션에 액세스하도록 하는 경우가 점점 더 많아지고 있습니다. 많은 애플리케이션에서 이러한 API를 사용하고 개발자 커뮤니티에서 이러한 API에 의존함에 따라 API 개발과 API 관리에 더욱 많은 시간과 노력이 소요되고 있습니다. API Gateway는 JavaScript, iOS, Android를 비롯해 여러 언어로 클라이언트 SDK를 생성하여 이러한 API를 손쉽게 사용할 수 있게 해줍니다.

Page Topics

기능

기능

API Gateway를 통해 HTTP API 또는 REST API 중 하나를 사용하여 RESTful API를 생성할 수 있습니다. HTTP API는 API 관리 기능이 필요하지 않은 API를 구축하기에 가장 좋은 방법입니다. HTTP API는 서버리스 워크로드 및 HTTP 백엔드에 최적화되어 있으며, API Gateway의 REST API에 비해 71%의 비용 절감 및 60%의 지연 시간 단축 효과를 제공합니다. 사용 플랜 및 API와 같이 단일 솔루션에서 API 프록시 기능과 API 관리 기능을 요구하는 워크로드의 경우, API Gateway는 REST API를 제공합니다. HTTP API와 REST API에 대해 지원되는 기능을 나란히 비교한 정보는 설명서를 참조하세요. 채팅 앱 및 스트리밍 대시보드와 같은 실시간 양방향 통신 애플리케이션을 구축하려면 WebSocket API를 사용합니다. API Gateway의 RESTful API 및 WebSocket API에 대해 자세히 알아보려면 FAQ 페이지를 방문하세요.

API 게이트웨이를 통해 VPC의 프라이빗 리소스로 요청을 라우팅할 수 있습니다. HTTP API를 활용하여 프라이빗 ALB 및 프라이빗 NLB 뒤의 서비스와 ECS 작업과 같은 AWS Cloud Map에 등록된 IP 기반 서비스에 대한 API를 구축할 수 있습니다.

API Gateway는 API의 각 HTTP 메서드에 대해 초당 요청 수를 기준으로 조절 규칙을 설정함으로써 백엔드 시스템의 트래픽을 관리할 수 있도록 지원합니다. API Gateway는 API를 통해 수신한 모든 수준의 트래픽을 처리함으로써 인프라의 유지 관리보다는 비즈니스 로직에 집중할 수 있게 해줍니다. REST API를 사용하는 경우 요청 건마다 백엔드 서비스를 호출하지 않도록 사용자 지정이 가능한 키 및 TTL(초)을 사용하여 API 데이터에 대한 캐시를 설정할 수도 있습니다.

API Gateway를 사용하면 AWS Lambda에서 실행되는 코드에 대한 사용자 지정 API를 쉽고 빠르게 생성한 후 API에서 Lambda 코드를 호출할 수 있습니다. API Gateway에서는 계정에서 AWS Lambda 코드를 실행하거나, AWS Step Functions 상태 머신을 시작하거나, AWS Elastic Beanstalk 또는 Amazon EC2를 호출하거나, 공개적으로 액세스 가능한 HTTP 엔드포인트를 통해 AWS 외부의 웹 서비스를 호출할 수 있습니다. API Gateway 콘솔을 사용하여 REST API 및 이와 관련된 리소스와 메서드를 정의하고, API 수명 주기를 관리하며, 클라이언트 SDK를 생성하고, API 지표를 볼 수 있습니다.

API가 배포 및 사용된 후 API Gateway에서 제공하는 대시보드를 통해 서비스에 요청된 호출을 모니터링할 수 있습니다. API Gateway 콘솔은 Amazon CloudWatch와 통합되어 콘솔에서 API 호출, 지연 시간, 오류 발생률 등 백엔드 성능 지표를 확인할 수 있습니다. API Gateway는 CloudWatch를 사용하여 모니터링 정보를 기록하므로 API Gateway API에 사용자 지정 경보를 설정할 수 있습니다. 또한, API Gateway는 디버깅하기 쉽도록 API 실행 오류를 CloudWatch Logs에 기록할 수 있습니다.

API Gateway는 AWS 서비스에 대한 API 요청을 인증 및 확인하기 위해 REST API 및 WebSocket API용 서명 버전 4를 사용하도록 지원합니다. 서명 버전 4 인증을 사용하면 AWS Identity and Access Management(IAM) 및 액세스 정책을 통해 API 및 다른 모든 AWS 리소스에 대한 액세스 권한을 부여할 수 있습니다. 또한, AWS Lambda 함수를 사용하여 JWT 토큰이나 SAML 어설션과 같은 전달자 토큰을 확인 및 인증할 수 있습니다.

REST API를 사용하는 경우 API Gateway는 API에 액세스하는 타사 개발자 에코시스템을 관리할 수 있도록 지원합니다. API Gateway에서 API 키를 생성하고, API 키별로 세부적인 액세스 권한을 설정하고, 타사 개발자가 API에 액세스할 수 있도록 해당 키를 타사 개발자에게 배포할 수 있습니다. 또한, 개별 API 키에 대해 제한을 설정하는 플랜을 정의하고 할당량 한도를 요청할 수 있습니다. API 키의 사용은 전적으로 선택 사항이며, 사용하려면 메서드별 수준에서 활성화되어야 합니다.

REST API를 사용하는 경우 API Gateway에서는 다양한 플랫폼용 클라이언트 SDK를 생성할 수 있으며, 생성한 SDK를 이용하여 애플리케이션에서 새로운 API를 빠르게 테스트하고 타사 개발자에게 해당 SDK를 배포할 수 있습니다. 생성된 SDK는 AWS 자격 증명을 사용하여 API 키 및 서명을 처리합니다. API Gateway는 Java, JavaScript, Java for Android, iOS용 Objective-C 또는 Swift, Ruby용 클라이언트 SDK를 생성할 수 있습니다. AWS CLI를 사용하면 get-sdk 명령을 직접적으로 호출하여 지원되는 플랫폼에 대한 API의 SDK를 생성하고 다운로드할 수 있습니다.

REST API를 사용하는 경우 API Gateway를 사용하면 같은 API를 여러 버전으로 실행할 수 있으므로 최신 버전이 게시된 후에도 애플리케이션에서 이전 API 버전을 계속 호출할 수 있습니다. 또한, API Gateway에서는 API 버전별로 알파, 베타, 프로덕션 등 여러 릴리스 단계를 관리할 수 있습니다. 각 API 단계는 사용자의 API 설정에 따라 다양한 백엔드 엔드포인트와 상호 작용하도록 구성될 수 있습니다. API의 특정 단계 및 버전은 사용자 지정 도메인 이름과 연동할 수 있으며, API Gateway를 통해 관리할 수 있습니다. 스테이지 및 버전 관리를 사용하면 이전 API 릴리스를 개선하거나 새로운 기능을 추가한 새로운 API 버전을 쉽게 테스트하고, 사용자 커뮤니티에서 최신 릴리스를 채택하기까지의 전환 기간에 이전 버전과의 호환성을 보장할 수 있습니다.

API Gateway 시작하기

1

AWS 계정에 가입

AWS 프리 티어에 즉시 액세스할 수 있습니다.

2

단계별 자습서로 알아보기

간단한 튜토리얼을 통해 자세히 알아보세요.

3

AWS를 사용하여 구축 시작

AWS Management Console을 방문하세요.