Choisir entre un accès direct à une source de données ou un proxy via une source de données Lambda - AWS AppSync

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Choisir entre un accès direct à une source de données ou un proxy via une source de données Lambda

Grâce à AWS AppSync l'APPSYNC_JSenvironnement d'exécution, vous pouvez écrire votre propre code qui implémente votre logique métier personnalisée en utilisant des AWS AppSync fonctions pour accéder à vos sources de données. Cela vous permet d'interagir directement avec des sources de données telles qu'Amazon DynamoDB, Aurora OpenSearch Serverless, HTTP APIs Service AWS et d'autres services sans avoir à déployer de services ou d'infrastructures informatiques supplémentaires. AWS AppSync facilite également l'interaction avec une AWS Lambda fonction en configurant une source de données Lambda. Les sources de données Lambda vous permettent d'exécuter une logique métier complexe en utilisant l'ensemble complet des fonctionnalités AWS Lambda de résolution d'une requête GraphQL. Dans la plupart des cas, une AWS AppSync fonction directement connectée à sa source de données cible fournira toutes les fonctionnalités dont vous avez besoin. Dans les situations où vous devez implémenter une logique métier complexe qui n'est pas prise en charge par l'APPSYNC_JSenvironnement d'exécution, vous pouvez utiliser une source de données Lambda comme proxy pour interagir avec votre source de données cible.

Intégration directe des sources de données Source de données Lambda en tant que proxy
Cas d'utilisation AWS AppSync les fonctions interagissent directement avec les sources de API données. AWS AppSync les fonctions appelées Lambdas interagissent avec les sources API de données.
Environnement d’exécution APPSYNC_JS (JavaScript) Tout environnement d'exécution Lambda pris en charge
Taille maximale du code 32 000 caractères par fonction AWS AppSync 50 Mo (compressés, pour le téléchargement direct) par Lambda
Modules externes Limité - Fonctionnalités prises en charge par APPSYNC _JS uniquement Oui
Appelez n'importe quel AWS service Oui - Utilisation de la source AWS AppSync HTTP de données Oui - En utilisant AWS SDK
Accès à l'en-tête de la demande Oui Oui
Accès réseau Non Oui
Accès au système de fichiers Non Oui
Journalisation et statistiques Oui Oui
Construisez et testez entièrement dans AppSync Oui Non
Démarrage à froid Non Non - Avec une simultanéité provisionnée
Scalabilité automatique Oui, de manière transparente par AWS AppSync Oui, tel que configuré dans Lambda
Tarification Sans frais supplémentaires Facturé pour l'utilisation de Lambda

AWS AppSync les fonctions qui s'intègrent directement à leur source de données cible sont idéales pour les cas d'utilisation suivants :

  • Interaction avec Amazon DynamoDB, Aurora Serverless et Service OpenSearch

  • Interaction avec HTTP APIs les en-têtes entrants et transmission

  • Interaction avec AWS les services à l'aide de sources de HTTP données (avec signature AWS AppSync automatique des demandes avec le rôle de source de données fourni)

  • Mise en œuvre du contrôle d'accès avant d'accéder aux sources de données

  • Implémentation du filtrage des données récupérées avant de répondre à une demande

  • Implémentation d'une orchestration simple avec exécution séquentielle de AWS AppSync fonctions dans un pipeline de résolution

  • Contrôle des connexions de mise en cache et d'abonnement dans les requêtes et les mutations.

AWS AppSync les fonctions qui utilisent une source de données Lambda comme proxy sont idéales pour les cas d'utilisation suivants :

  • Utilisation d'un langage autre que JavaScript le langage Velocity Template (VTL)

  • Réglage et contrôle CPU de la mémoire pour optimiser les performances

  • Importation de bibliothèques tierces ou demande de fonctionnalités non prises en charge dans APPSYNC_JS

  • Effectuer plusieurs requêtes réseau et/ou obtenir l'accès au système de fichiers pour répondre à une requête

  • Requêtes par lots à l'aide de la configuration par lots.