View a markdown version of this page

Elección entre acceso directo a los orígenes de datos y proxies a través de un origen de datos de Lambda - AWS AppSync GraphQL

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Elección entre acceso directo a los orígenes de datos y proxies a través de un origen de datos de Lambda

Con AWS AppSync y el APPSYNC_JS tiempo de ejecución, puedes escribir tu propio código que implemente tu lógica empresarial personalizada mediante el uso de AWS AppSync funciones para acceder a tus fuentes de datos. Esto le facilita la interacción directa con fuentes de datos como Amazon DynamoDB, Aurora Serverless, OpenSearch Service, las API HTTP y otros AWS servicios sin tener que implementar infraestructura o servicios computacionales adicionales. AWS AppSync también facilita la interacción con una AWS Lambda función mediante la configuración de una fuente de datos Lambda. Las fuentes de datos de Lambda permiten ejecutar una lógica empresarial compleja utilizando todas las capacidades del conjunto AWS Lambda de funciones para resolver una solicitud de GraphQL. En la mayoría de los casos, una AWS AppSync función conectada directamente a su fuente de datos de destino proporcionará toda la funcionalidad que necesita. En situaciones en las que necesita implementar una lógica empresarial compleja incompatible con la versión ejecutable APPSYNC_JS, puede utilizar un origen de datos de Lambda como proxy para interactuar con el origen de datos de destino.

Integración directa de fuentes de datos Fuente de datos Lambda como proxy
Caso de uso AWS AppSync las funciones interactúan directamente con las fuentes de datos de la API. AWS AppSync las funciones llaman a Lambdas y interactúan con las fuentes de datos de la API.
Tiempo de ejecución APPSYNC_JS (JavaScript) Cualquier tiempo de ejecución de Lambda compatible
Tamaño máximo del código 32 000 caracteres por función AWS AppSync 50 MB (comprimidos, para carga directa) por Lambda
Módulos externos Limitado: solo funciones compatibles con APPSYNC_JS
Llame AWS a cualquier servicio Sí: uso de una fuente de datos AWS AppSync HTTP Sí, usando el SDK AWS
Acceso al encabezado de la solicitud
Acceso a la red No
Acceso al sistema de archivos No
Registro y métricas
Cree y pruebe completamente dentro AppSync No
Arranque en frío No No: con simultaneidad aprovisionada
Auto-scaling Sí, de forma transparente mediante AWS AppSync Sí, tal como se configuró en Lambda
Precios Sin cargo adicional Se cobra por el uso de Lambda

AWS AppSync las funciones que se integran directamente con su fuente de datos de destino son ideales para casos de uso como los siguientes:

  • Interactuar con Amazon DynamoDB, Aurora Serverless y Service OpenSearch

  • Interacción con API HTTP y transferencia de encabezados entrantes

  • Interactuar con AWS los servicios mediante fuentes de datos HTTP (con la firma AWS AppSync automática de solicitudes con la función de fuente de datos proporcionada)

  • Implementación del control de acceso antes de acceder a orígenes de datos

  • Implementación del filtrado de datos recuperados antes de cumplir una solicitud

  • Implementación de una orquestación sencilla con la ejecución secuencial de AWS AppSync funciones en una canalización de resolución

  • Control de conexiones de suscripción y almacenamiento en caché en consultas y mutaciones.

AWS AppSync las funciones que utilizan una fuente de datos Lambda como proxy son ideales para casos de uso como los siguientes:

  • Utilizar un lenguaje distinto JavaScript del lenguaje de plantillas Velocity (VTL)

  • Ajuste y control de la CPU o memoria para optimizar el rendimiento

  • Importación de bibliotecas de terceros o solicitud de características no compatibles en APPSYNC_JS

  • Realizar varias solicitudes de red and/or para obtener acceso al sistema de archivos para completar una consulta

  • Procesamiento por lotes de solicitudes mediante la configuración de procesamiento por lotes.