6 repositorios
Parallel execution of GraphQL resolver functions to reduce latency for complex data fetching.
Distinct from Resolver-Based Fetching: Distinct from Resolver-Based Fetching: focuses specifically on the concurrent/parallel execution of resolvers rather than the basic mapping mechanism.
Explore 6 awesome GitHub repositories matching web development · Concurrent Resolver Execution. Refine with filters or upvote what's useful.
This project is a GraphQL implementation for Go, providing a complete suite for building GraphQL servers. It includes a schema engine for defining types, a query parser to convert strings into abstract syntax trees, and an execution engine that resolves fields against a defined schema to return structured data. The library distinguishes itself through reflection-based type mapping, allowing object definitions and arguments to be derived directly from native Go structs. It also supports the execution of real-time data streaming via GraphQL subscriptions and provides an extensible execution pip
Processes multiple data fetching requests in parallel to minimize response latency for complex queries.
GraphQL.NET es un framework del lado del servidor para construir y ejecutar APIs de GraphQL dentro de aplicaciones C#. Proporciona un toolkit integral para la construcción de esquemas, un motor federado para grafos de datos distribuidos y un manejador de suscripciones para gestionar flujos de datos en tiempo real. El proyecto se distingue por un constructor de esquemas flexible que admite tanto definiciones programáticas code-first como enfoques declarativos schema-first utilizando el lenguaje de definición de esquemas estándar. Incluye un motor de federación dedicado para dividir grafos de datos en subgrafos y componerlos en una puerta de enlace unificada, así como una implementación de cargador de datos (data loader) diseñada específicamente para resolver el problema de consultas N+1 mediante procesamiento por lotes y caché. El framework cubre una amplia gama de capacidades operativas, incluyendo la integración de inyección de dependencias para la gestión del ciclo de vida de los servicios, pipelines de middleware para la interceptación de resolución de campos y un pipeline de ejecución optimizado con tipos de valor para reducir las asignaciones de memoria. También proporciona herramientas para el análisis de complejidad de consultas, caché de documentos y control de acceso basado en roles para asegurar los endpoints de la API. La compatibilidad con la compilación de esquemas ahead-of-time permite que el framework se ejecute en entornos que prohíben la generación dinámica de código.
Caps the maximum number of asynchronous field resolvers that can execute simultaneously to maintain system stability.
graphql-go es una biblioteca de servidor para implementar servidores GraphQL en Go. Proporciona la infraestructura central para el análisis de esquemas, mapeo de resolutores y ejecución de consultas. La biblioteca incluye un motor de suscripción que permite la transmisión de datos en tiempo real a los clientes utilizando transporte WebSocket. También cuenta con un trazador de ejecución para monitorear y perfilar el rendimiento de las consultas a través de herramientas de telemetría. El sistema gestiona el consumo de recursos y la estabilidad a través de un optimizador de consultas que aplica restricciones de profundidad y controla la concurrencia de los resolutores. Admite la optimización de la obtención de datos mediante prefetching a nivel de campo para reducir las solicitudes repetitivas a la base de datos y utiliza un mecanismo de transformación de pánico a error para mantener la estabilidad del servidor.
Controls the number of simultaneous resolver goroutines per request to prevent system overload.
graphql-go es una biblioteca GraphQL y servidor de implementación para Go que prioriza el esquema. Proporciona un motor de ejecución de consultas y un analizador de esquemas que convierte cadenas de definición de esquemas en estructuras ejecutables y valida las firmas de los resolutores. La biblioteca también incluye una implementación de streaming para suscripciones GraphQL en tiempo real utilizando canales dentro de los resolutores. El proyecto se distingue por la ejecución paralela de resolutores para reducir la latencia de las solicitudes y el uso de gestión de memoria de buffer-pool para reducir la sobrecarga de recolección de basura. Permite la creación de instancias de esquema clonables a partir de un árbol de sintaxis compartido para aplicar configuraciones o sobrescrituras de resolutores únicas. La biblioteca cubre amplias áreas de capacidad, incluyendo la gestión de esquemas con definiciones de escalares personalizados y exportación de metadatos, y seguridad mediante limitaciones de profundidad y complejidad de consultas. También proporciona herramientas para la obtención eficiente de datos mediante la inspección de conjuntos de selección para evitar consultas N+1, así como observabilidad mediante trazado de ejecución y manejo de pánico en resolutores.
Executes multiple field resolvers concurrently to reduce the total latency of a single query request.
Strawberry es una biblioteca GraphQL con tipado fuerte para Python que permite el diseño de esquemas utilizando anotaciones de tipo y dataclasses de Python. Funciona como un servidor GraphQL asíncrono y motor de ejecución, proporcionando un puente para exponer esquemas a través de frameworks web compatibles con ASGI como FastAPI, Django, Flask y Litestar. El proyecto implementa GraphQL Federation, permitiendo la creación de esquemas y entidades distribuidas que se fusionan en un supergrafo unificado a través de múltiples servicios. También incluye un kit de herramientas dedicado para la especificación Relay, soportando la identificación global de objetos y la paginación basada en conexiones. El framework cubre un amplio conjunto de capacidades, incluyendo streaming de datos en tiempo real mediante WebSockets y Server-Sent Events, mapeo de modelos Pydantic y generación automática de código. Proporciona herramientas integradas para seguridad y observabilidad, como limitación de complejidad de consultas, control de acceso basado en roles y rastreo de métricas de ejecución. Los desarrolladores pueden realizar prototipos utilizando un servidor de desarrollo integrado con una interfaz de inspección de esquemas interactiva.
Runs data fetching tasks concurrently using non-blocking asynchronous resolvers to prevent execution bottlenecks.
async-graphql is a type-safe framework for building specification-compliant GraphQL servers in Rust. It uses procedural macros to automatically generate schemas from native language structures, ensuring consistency between the data model and the API specification. The project provides native support for Apollo Federation v2, allowing entities and fields to be shared and resolved across multiple distributed subgraphs. It also implements real-time data streaming via WebSocket subscriptions and asynchronous event streams. The framework includes a wide array of capabilities for schema design, su
Implements parallel execution of GraphQL resolver functions to minimize latency when fetching data from external sources.