19 Punkte von xguru 2025-11-27 | 2 Kommentare | Auf WhatsApp teilen
  • „Ein in TypeScript geschriebenes dauerhaftes (durable), wiederaufnehmbares (resumable) Workflow-Framework
  • Bietet eine Workflow-Engine, die verschiedene Services und APIs verbindet, um komplexe Arbeitsabläufe zu automatisieren
  • Eine modulare Open-Source-Plattform, die entwickelt wurde, um Probleme bei Workflow-Automatisierung und Integration zu lösen
  • Selbst wenn ein Server ausfällt oder ein Deployment stattfindet, wird der Zustand in Postgres gespeichert, sodass die Ausführung exakt ab dem letzten Schritt fortgesetzt werden kann
  • Da jedes step.run({ name }, fn) nur einmal ausgeführt wird und das Ergebnis memoisert wird, werden bei einem Neustart nach einem Crash Nebenwirkungen wie Kartenzahlungen oder E-Mail-Versand nicht doppelt ausgeführt, sondern die zwischengespeicherten Ergebnisse wiederverwendet
  • Ohne dedizierten Server basiert die Architektur auf Worker-Prozessen (ow.newWorker({ concurrency })), die ausstehende Runs aus der DB pollen und ausführen. Dadurch lassen sich mehrere Worker für Hochverfügbarkeit und Scale-out starten, und lange Sleep-Phasen wie step.sleep("id", "1h") belegen keinen Worker-Slot
  • Über Workflow-Input/Output-Generics, Versionsfelder (version: "v2"), run().result(), handle.cancel() usw. ist das System so konzipiert, dass typsichere Definitionen, Versionsverwaltung, Ergebnisabfrage und Abbruch vollständig auf Code-Ebene behandelt werden können
  • Unterstützt über eine Plugin-Architektur die Erweiterung und Anpassung für externe Systeme
  • Unterstützt Integrationen mit wichtigen SaaS- und Entwickler-Tools wie OpenAI, Slack, GitHub und Notion
  • Der Fokus liegt derzeit auf dem PostgreSQL-Backend und grundlegenden Runtime-Funktionen (gleichzeitige Ausführung, Retry, parallele Schritte, Sleep, Versionsverwaltung, Cancel)
    • Auf der Roadmap stehen unter anderem CLI, Dashboard, Idempotency Key, Rollback-/Kompensationsfunktionen, Signale (signals), OpenTelemetry, Redis-/SQLite-Backends sowie Go-/Python-SDKs

2 Kommentare

 
hiyama 2025-11-27

Vor Kurzem wurde GitHub - earendil-works/absurd: An experiment in durability https://share.google/PCjaLh3j46ayECI9b hier gepostet … das scheint ein Projekt mit demselben Konzept zu sein, aber wo ist es geblieben …

 
click 2025-11-27

Erinnert ein wenig an Spring Batch.