직접 데이터 소스 액세스와 Lambda 데이터 소스를 통한 프록시 중 선택 - AWS AppSync GraphQL

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

직접 데이터 소스 액세스와 Lambda 데이터 소스를 통한 프록시 중 선택

AWS AppSync 및 APPSYNC_JS 런타임을 사용하면 AWS AppSync 함수를 사용하여 데이터 소스에 액세스하여 사용자 지정 비즈니스 로직을 구현하는 자체 코드를 작성할 수 있습니다. 따라서 추가 컴퓨팅 AWS 서비스 또는 인프라를 배포할 필요 없이 Amazon DynamoDB, Aurora Serverless, OpenSearch Service, HTTP APIs 및 기타 서비스와 같은 데이터 소스와 직접 상호 작용할 수 있습니다. 또한 AWS AppSync를 사용하면 Lambda 데이터 소스를 구성하여 AWS Lambda 함수와 쉽게 상호 작용할 수 있습니다. Lambda 데이터 소스를 사용하면 AWS Lambda의 전체 세트 기능을 사용하여 복잡한 비즈니스 로직을 실행하여 GraphQL 요청을 해결할 수 있습니다. 대부분의 경우 대상 데이터 소스에 직접 연결된 AWS AppSync 함수는 필요한 모든 기능을 제공합니다. APPSYNC_JS 런타임에서 지원하지 않는 복잡한 비즈니스 로직을 구현해야 하는 상황에서는 Lambda 데이터 소스를 프록시로 사용하여 대상 데이터 소스와 상호 작용할 수 있습니다.

직접 데이터 소스 통합 프록시로서의 Lambda 데이터 소스
사용 사례: AWS AppSync functions interact directly with API data sources. AWS AppSync functions call Lambdas that interact with API data sources.
Runtime APPSYNC_JS(JavaScript) 지원되는 Lambda 런타임
Maximum size of code AWS AppSync 함수당 32,000자 Lambda당 50MB(직접 업로드용 압축 파일)
External modules 제한적 - APPSYNC_JS는 기능만 지원
Call any AWS service 예 - AWS AppSync HTTP 데이터 소스 사용 예 - AWS SDK 사용
Access to the request header
Network access 아니요
File system access 아니요
Logging and metrics
Build and test entirely within AppSync 아니요
Cold start 아니요 아니요 - 프로비저닝된 동시성
Auto-scaling 예 - AWS AppSync에서 투명하게 표시 예 - Lambda에서 구성한 대로
Pricing 추가 요금 없음 Lambda 사용에 대한 요금 부과

대상 데이터 소스와 직접 통합되는AWS AppSync 함수는 다음과 같은 사용 사례에 적합합니다.

  • Amazon DynamoDB, Aurora Serverless 및 OpenSearch Service와의 상호 작용

  • HTTP API와의 상호 작용 및 수신 헤더 전달

  • HTTP 데이터 소스를 사용하여 AWS 서비스와 상호 작용(제공된 데이터 소스 역할로 요청에 AWS AppSync 자동으로 서명)

  • 데이터 소스에 액세스하기 전에 액세스 제어 구현

  • 요청을 이행하기 전에 검색된 데이터에 대한 필터링 구현

  • 해석기 파이프라인에서 AWS AppSync 함수를 순차적으로 실행하여 간단한 오케스트레이션 구현

  • 쿼리와 뮤테이션의 캐싱 및 구독 연결 제어

Lambda 데이터 소스를 프록시로 사용하는AWS AppSync 함수는 다음과 같은 사용 사례에 적합합니다.

  • JavaScript 또는 Velocity Template Language(VTL) 이외의 언어 사용

  • CPU 또는 메모리를 조정 및 제어하여 성능 최적화

  • 타사 라이브러리를 가져오거나 APPSYNC_JS에서 지원되지 않는 기능을 요구

  • 여러 네트워크 요청 및/또는 쿼리 수행을 위한 파일 시스템 액세스 권한 얻기

  • 일괄 처리 구성을 사용한 요청 일괄 처리.