Building durable workflows on Postgres
Les durable workflows consistent à sauvegarder régulièrement l'état d'exécution d'un programme dans une base de données pour pouvoir le relancer depuis le dernier point de contrôle en cas de plantage. La mise en œuvre courante repose sur une orchestration externe (par exemple Temporal, Airflow, AWS Step Functions) qui crée des enregistrements de workflow, distribue les étapes aux workers et checkpointe les sorties dans un magasin de données central. L'article soutient qu'il est plus simple et plus efficace d'utiliser la base de données elle‑même, en particulier Postgres, comme orchestrateur en laissant les serveurs d'application récupérer, exécuter et enregistrer directement les points de contrôle des workflows dans la base. Cette conception exploite les fonctionnalités éprouvées de Postgres pour l'évolutivité, la haute disponibilité et l'observabilité via SQL et index, et s'appuie sur les mécanismes de verrouillage et d'intégrité pour coordonner des workers concurrents. Les auteurs estiment que supprimer l'orchestrateur central réduit la surface d'attaque et les points de défaillance supplémentaires, et ils fournissent des ressources (documentation, dépôt GitHub et communauté) pour mettre en œuvre l'exécution durable pilotée par Postgres.