Les Durable Objects de Cloudflare, un serveur serverless qui maintient son état
Les Durable Objects de Cloudflare, un serveur serverless qui maintient son état
Les Durable Objects de Cloudflare résolvent un problème majeur du serverless : la perte d'état. Contrairement aux Workers classiques qui s'éteignent après chaque requête (souvent après 30 secondes d'inactivité), un Durable Object est un serveur isolé qui conserve sa mémoire et son état dans le temps. C'est idéal pour les applications nécessitant une faible latence et une cohérence d'état, comme les jeux en ligne ou la gestion de sessions complexes.
Le fonctionnement repose sur le fait que chaque Durable Object est associé à une base de données SQLite intégrée. SQLite est une base de données légère, compatible SQL, qui tient dans un seul fichier. Lorsque votre Worker s'exécute, il peut lire et écrire dans cette base. Même si le processus serveur s'éteint entre deux requêtes, les données restent persistantes dans le stockage local de l'objet. À la prochaine requête, l'objet se réactive avec l'état exact qu'il avait avant, sans besoin de récupérer des données depuis une base externe distante.
Exemple : Imaginez un jeu de tir en ligne. Chaque partie est gérée par un Durable Object unique. Le score des joueurs est stocké dans sa base SQLite locale. Si un joueur se connecte, joue, puis se déconnecte, l'objet peut s'éteindre. Quand il revient, l'objet se rallume et retrouve immédiatement le score précédent, garantissant une expérience fluide et sans latence liée à des allers-retours réseau vers une base de données centrale.