Conçu pour la montée en charge
EDDI fonctionne sur Java 25 avec Quarkus, exploitant les threads virtuels (Project Loom) pour une concurrence massive liée aux E/S. Contrairement aux boucles d'événements de Node.js, les threads virtuels offrent un véritable parallélisme multi-thread avec un overhead minimal.
Pourquoi les threads virtuels comptent pour les agents IA
Les agents IA modernes sont fondamentalement limités par les I/O : ils passent la plupart de leur temps à attendre les réponses des API LLM, les requêtes vectorielles et les opérations de base de données.
Les threads virtuels Java résolvent ce problème avec élégance : lorsqu'un agent attend une réponse LLM, son thread virtuel cède de manière transparente, libérant le thread porteur pour traiter d'autres opérations.
Points forts en performance
- Threads virtuels — Des millions de threads légers pour les appels LLM concurrents
- Runtime Quarkus — Cloud-native, rechargement à chaud en mode développement, optimisé pour les conteneurs
- NATS JetStream — Scalabilité horizontale avec une architecture événementielle
- Double base de données — MongoDB ou PostgreSQL, changement avec une variable d'environnement. Une image Docker pour les deux
- Streaming SSE — Réponses de chat en temps réel, flux de discussions de groupe et streaming de logs en direct via Server-Sent Events
- Installation en une commande — Assistant interactif qui déploie EDDI + base de données + agent de démarrage via Docker Compose
- Certifié Red Hat — Certification de conteneurs avec vérifications preflight automatisées en CI/CD
Performance en contexte
Aucun runtime ne gagne dans tous les scénarios. Java surpasse constamment Node.js de 30 à 68% dans les scénarios impliquant des tâches intensives en CPU — exactement ce dont les agents IA ont besoin.
L'architecture d'EDDI est intentionnellement optimisée pour les charges de travail mixtes I/O + CPU : Quarkus avec des threads virtuels, combiné à des pools de connexion compatibles Loom (Agroal).