1 dépôt
Processing fields across multiple objects in a single batch to optimize memory usage for nested lists.
Distinct from Query Processing: Specific traversal strategy for query execution to reduce memory, whereas Query Processing is the general system for execution and optimization.
Explore 1 awesome GitHub repository matching data & databases · Breadth-First. Refine with filters or upvote what's useful.
GraphQL-Ruby est une bibliothèque Ruby pour construire des API GraphQL avec un schéma fortement typé et un moteur d'exécution de requêtes dédié. Elle fournit un framework complet pour mapper les objets de l'application à un système de types formel, permettant une récupération de données structurée via des résolveurs définis. Le projet se distingue par des mécanismes avancés de performance et de livraison, incluant un data loader pour le batching et le cache afin d'éviter les patterns de requêtes N+1. Il supporte la livraison de données haute performance via le streaming de réponses incrémentales, les réponses de requêtes différées et la récupération de données en parallèle utilisant des fibers. De plus, il offre un support natif pour les conventions Relay, incluant des helpers spécialisés pour les connexions et l'identification d'objets. La bibliothèque couvre une large surface de gestion d'API, incluant un contrôle d'accès granulaire, le versioning de schéma pour maintenir la rétrocompatibilité et des mises à jour en temps réel via des abonnements. Elle inclut également des outils de gestion de trafic pour protéger les ressources serveur, tels que la limitation de complexité des requêtes et le rate limiting. Le développement et l'observabilité sont supportés par des outils d'analyse AST, le traçage d'exécution et des utilitaires de test spécialisés pour la vérification du chargement par lots.
Processes fields across multiple objects in a single batch to reduce memory usage for large nested lists.