CloudFlare stellt Durable Objects als Beta vor
(blog.cloudflare.com)- „Unique Durable Objects“ für Serverless
→ Objects: genau wie im OOP-Konzept Instanzen von Klassen, die Code und Zustand enthalten
→ Unique: besitzen eine UUID. Wenn andere Workers weltweit nur die ID kennen, können sie Nachrichten an das jeweilige Objekt senden
→ Durable: Im Gegensatz zu normalen Objekten kann der Zustand dauerhaft auf der Festplatte gespeichert werden. Zugriff und Nutzung ohne Latenz
- Zwei Hauptfunktionen
→ Storage: bietet starke transaktionale Konsistenz. Große Datenbanken lassen sich in viele kleine Einheiten aufteilen. Skalierung ohne Wartungsaufwand
→ Coordination: Serverless-Anfragen werden normalerweise zufällig load-balanced, sodass es bisher unmöglich war, zwei Clients mit demselben Worker zu verbinden. Jetzt ist das möglich.
Das heißt, Echtzeit-Chat, kollaborative Bearbeitung, Videokonferenzen, Pub/Sub-Nachrichtenqueues und Game-Sessions lassen sich nun in Serverless umsetzen
Für die Nutzung von WebSocket war eine solche Coordination nötig; da dies nun über DO möglich ist, beginnt Workers auch mit der Unterstützung von WebSocket
- Durable Objects haben kein Region-Konzept und sind weltweit verfügbar (Cloudflare leitet sie automatisch an den nächstgelegenen Standort weiter und verwaltet sie dort)
Anwendungsbereiche
-
Die Killer-App dürfte etwas wie ein kollaboratives Tool zur Echtzeit-Dokumentbearbeitung für sehr viele Nutzer sein
-
Atomic Counter: nebenläufige Zähler, bei denen Erhöhungen/Verringerungen auch bei gleichzeitigen Anfragen mehrerer Clients nicht verloren gehen
-
Chat: Selbst extrem große Chaträume sind mit ein paar hundert Zeilen Code möglich, außerdem ist Rate Limiting pro IP möglich
-
Warenkorb, Game-Server, IoT Coordination, Social Feed, Kommentar-/Chat-Widgets
Die Zukunft von Durable Objects: eine echte Edge-Datenbank
Derzeit ist die Nutzung nur mit Beta-Einladung möglich
Über die Preise wird noch nachgedacht, sie sollen aber günstiger sein als AWS DynamoDB oder Google Cloud Firestore (laut einem Kommentar von PM Greg auf HN)
1 Kommentare
Serverless wurde bisher meist vor allem auf Stateless-Anwendungen angewendet, aber das wird nun offenbar weiter ausgedehnt, sodass auch Bereiche einbezogen werden, die Koordination benötigen.
Die jüngsten Schritte von Cloudflare sind wirklich äußerst spannend.
CloudFlare, Start der Serverless-Beta von Workers Unbound https://de.news.hada.io/topic?id=2543
Wie CloudFlare die Cold-Start-Zeit von Workers auf 0 reduziert hat https://de.news.hada.io/topic?id=2567
Cloudflare startet einen 24-Stunden-Live-TV-Dienst auf Basis des eigenen globalen Netzwerks https://de.news.hada.io/topic?id=2227