Vercel hat Daemons angekündigt, einen neuen Dienst für den Betrieb dauerhafter Hintergrund-Worker. Damit erweitert die Plattform ihre Rolle von der Bereitstellung von Frontends und anfragengebundenen Funktionen hin zum Betrieb weiterer Teile der Backend-Infrastruktur von Anwendungen. Der Dienst ist derzeit als Public Beta verfügbar und ermöglicht es Entwicklern, einen Container zu betreiben und die gewünschte Anzahl von Instanzen pro Region festzulegen. Vercel sorgt dafür, dass die Prozesse aktiv bleiben, und startet sie neu, wenn sie beendet werden oder ausfallen.
Daemons zielen auf Workloads, bei denen Aufgaben aus einer Warteschlange oder Datenbank abgerufen werden, statt auf eine eingehende Anfrage aus dem Internet zu warten. Dazu gehören asynchrone Verarbeitung, Aufgaben zur Medienkonvertierung und Arbeiten, die eine kontinuierliche CPU-Nutzung erfordern. Laut Malte Ubl, Chief Technology Officer bei Vercel, stellt dieser Dienst das fehlende Bindeglied zwischen anfragengebundener Verarbeitung und dauerhaft laufenden Hintergrundaufgaben dar.
Was bieten Daemons Entwicklern?
Die Worker können über Git oder das Vercel CLI bereitgestellt werden. Vercel erstellt das Container-Image und speichert es in der Container Registry. Anschließend verwaltet das Unternehmen die für jede Region festgelegten Instanzen. Das Unternehmen beschreibt ein praktisches Modell, bei dem ein auf Next.js basierendes Frontend mit einer Python-API und einem in einem Container laufenden Videoverarbeiter kombiniert wird. Der Verarbeiter ruft Aufgaben aus Vercel Queues ab und erzeugt abspielbare Dateien sowie Vorschaubilder.
Daemons unterscheiden sich von temporären Sandboxes: Sandboxes sind für die vorübergehende Ausführung vorgesehen, während Daemons aktiv bleiben. Sie empfangen keine Anfragen direkt aus dem Internet, sondern verbinden sich mit der Arbeitsquelle und führen Aufgaben aus, sobald diese verfügbar sind. Vercel selbst nutzt den Dienst, um einen Teil seiner asynchronen Workloads zu verlagern. Das Unternehmen gibt an, dass seine Kontrolloberfläche etwa eine Milliarde Anfragen pro Monat verarbeitet.
Container im Vergleich zu verwalteten Laufzeitumgebungen
Vercel ordnet Daemons in die Erweiterung seiner Container-Unterstützung ein. Das Unternehmen erklärt, dass 5.000 Teams seit Beginn der Public Beta 150.000 Container-Bereitstellungen durchgeführt haben. Container geben Entwicklern die Freiheit, ihre eigenen Laufzeitumgebungen und Systembibliotheken einzubinden. Die Aktualisierung des Sicherheits-Images des Containers und dessen erneute Bereitstellung bleiben jedoch Aufgabe des Kunden.
Im Gegensatz dazu übernimmt Vercel Sicherheitsupdates in den verwalteten Laufzeitumgebungen für Node, Bun und Python, ohne dass der Kunde eine erneute Bereitstellung vornehmen muss. Das bedeutet, dass die Wahl von Containern nicht nur eine Frage der Flexibilität ist, sondern auch zusätzlichen betrieblichen Aufwand mit sich bringt, den Teams berücksichtigen müssen.
Python-Unterstützung und persistenter Speicher für Agents
Die Python-Unterstützung ist nun allgemein für Frameworks wie FastAPI, Flask und Django verfügbar. Die Anwendungen laufen auf dem standardmäßigen CPython mit Abhängigkeiten aus PyPI, während Vercel Framework-Erkennung, Build und Skalierung übernimmt. Das Unternehmen gibt an, dass bereits 150.000 Teams Python-Backends auf seiner Plattform betreiben, darunter Ingenieure von OpenAI, Polymarket und Exa.
Vercel hat außerdem den Dienst Drives allgemein verfügbar gemacht. Dabei handelt es sich um persistenten Speicher, der die Dateien eines KI-Agents von der Sandbox-Umgebung trennt, in der der Code ausgeführt wird. Der Agent kann ein Drive in eine neue Sandbox einbinden oder die Laufzeitumgebung wechseln und mit denselben Dateien weiterarbeiten. Vercel zufolge vereint der Dienst Eigenschaften eines netzwerkbasierten, EBS-ähnlichen Laufwerks mit Objektspeicher.
Warum ist diese Erweiterung wichtig?
Drives fördern ein Modell, bei dem die für den Agent wichtigen Dateien unabhängig von der Ausführungsumgebung sind. Mehrere Agents können eine schreibgeschützte Kopie eines Datensatzes verwenden oder beschreibbare, verzweigte Kopien erstellen, um verschiedene Ansätze zu testen, während die Zweige vom Original getrennt bleiben. Der Dienst bietet standardmäßig eine Kapazität von 1 Terabyte beziehungsweise 1 Gigabyte im Hobby-Tarif und unterstützt Konfigurationen bis zu 16 Terabyte.
In der Praxis geben diese Erweiterungen Teams, die ihre Frontends auf Vercel hosten, die Möglichkeit, Python-Dienste, Hintergrund-Worker und persistenten Speicher innerhalb derselben Plattform zu betreiben, statt separate Bereitstellungssysteme zu verwalten. Die Abwägungen entfallen dadurch jedoch nicht: Bei Containern muss der Kunde die Sicherheitsupdates verfolgen, und Daemons eignen sich für kontinuierliche Workloads, die Aufgaben aus einer Arbeitsquelle abrufen, nicht für jede Art von Backend-Dienst oder jedes Verarbeitungsmuster.