Vercel a annoncé Daemons, un nouveau service permettant d’exécuter des travailleurs d’arrière-plan permanents, dans le cadre d’une initiative qui étend le rôle de la plateforme, de l’hébergement des interfaces frontales et des fonctions liées aux requêtes à l’exécution d’un plus grand nombre de composants de l’infrastructure dorsale des applications. Le service est actuellement disponible en version bêta publique et permet au développeur d’exécuter un conteneur et de définir le nombre d’instances souhaitées dans chaque région, tandis que Vercel se charge de maintenir les processus en fonctionnement et de les redémarrer s’ils s’arrêtent ou tombent en panne.
Daemons cible les charges qui consistent à extraire des tâches d’une file d’attente ou d’une base de données, plutôt qu’à attendre une requête entrante depuis Internet. Cela inclut le traitement asynchrone, les tâches de conversion de médias et les travaux nécessitant une consommation continue du processeur. Selon Malte Ubl, directeur technique de Vercel, ce service représente l’élément manquant entre le traitement lié aux requêtes et les tâches d’arrière-plan continues.
Qu’ajoute Daemons pour les développeurs ?
Les travailleurs peuvent être déployés via Git ou l’outil Vercel CLI. Vercel construit l’image du conteneur et la stocke dans le Container Registry, puis gère le nombre d’instances défini pour chaque région. L’entreprise explique qu’un modèle pratique pourrait associer une interface construite avec Next.js, une API Python et un processeur vidéo exécuté dans un conteneur, de sorte que le processeur extraie les tâches de Vercel Queues et produise des fichiers de lecture et des vignettes.
Daemons diffère des Sandboxes temporaires : les Sandboxes sont destinées à une exécution temporaire, tandis que les Daemons restent actifs et ne reçoivent pas directement les requêtes depuis Internet, mais se connectent à la source de travail et exécutent les tâches lorsqu’elles sont disponibles. Vercel utilise elle-même le service pour transférer une partie de ses charges asynchrones, tandis qu’elle indique que son interface de contrôle traite environ un milliard de requêtes par mois.
Conteneurs contre environnements d’exécution gérés
Vercel inscrit Daemons dans l’élargissement de sa prise en charge des conteneurs. Elle affirme que 5 000 équipes ont effectué 150 000 déploiements de conteneurs depuis l’entrée de cette prise en charge en phase de bêta publique. Les conteneurs donnent aux développeurs la liberté d’intégrer leurs propres environnements d’exécution et bibliothèques système, mais la mise à jour de l’image de conteneur de sécurité et son redéploiement restent à la charge du client.
En revanche, Vercel prend en charge les mises à jour de sécurité des environnements d’exécution gérés pour Node, Bun et Python sans que le client ait besoin de redéployer. Cela signifie que le choix des conteneurs ne concerne pas uniquement la flexibilité, mais implique également une charge opérationnelle supplémentaire que les équipes doivent prendre en compte.
Prise en charge de Python et stockage persistant pour les agents
La prise en charge de Python est désormais généralement disponible pour des frameworks tels que FastAPI, Flask et Django. Les applications fonctionnent sur CPython standard avec des dépendances PyPI, tandis que Vercel se charge de détecter le framework, de la construction et de la mise à l’échelle. L’entreprise affirme que 150 000 équipes exécutent déjà des backends Python sur sa plateforme, parmi lesquelles des ingénieurs d’OpenAI, de Polymarket et d’Exa.
Vercel a également rendu le service Drives généralement disponible. Il s’agit d’un stockage persistant qui sépare les fichiers de l’agent d’intelligence artificielle de l’environnement Sandbox dans lequel le code est exécuté. L’agent peut monter un Drive dans un nouveau Sandbox ou modifier l’environnement d’exécution et poursuivre son travail sur les mêmes fichiers. Vercel affirme que le service combine les caractéristiques d’un moteur de fichiers réseau similaire à EBS et du stockage objet.
Pourquoi cette expansion est-elle importante ?
Drives pousse vers un modèle dans lequel les fichiers importants de l’agent sont indépendants de l’environnement d’exécution. Plusieurs agents peuvent utiliser une copie en lecture seule d’un ensemble de données, ou créer des copies dérivées inscriptibles afin de tester différentes approches, tout en maintenant les branches séparées de l’original. Le service fournit une capacité par défaut de 1 To, ou de 1 Go pour le plan Hobby, avec des configurations pouvant atteindre 16 To.
Dans la pratique, ces ajouts offrent aux équipes qui hébergent leurs interfaces sur Vercel la possibilité de conserver les services Python, les travailleurs d’arrière-plan et le stockage persistant au sein de la même plateforme, au lieu de gérer des systèmes de déploiement distincts. Cela n’élimine toutefois pas les compromis : les conteneurs exigent du client qu’il suive les mises à jour de sécurité, tandis que Daemons convient aux charges continues fondées sur l’extraction depuis une source de travail, mais pas à tous les types de services d’arrière-plan ni à tous les modèles de traitement.