Automerge: cos'è e come funziona la sincronizzazione dei dati tra dispositivi senza usare un server centralizzato

Venerdì 03/02/2023 11:31
Nel corso degli ultimi anni gli sviluppatori hanno dovuto in gran parte scegliere tra la creazione di software cloud e la realizzazione di applicazioni più tradizionali installate sui singoli dispositivi. Il cloud semplifica la condivisione dei dati tra gli utenti e semplifica l'accesso da qualunque client che possa essere collegato alla rete Internet.

Automerge è un progetto pubblicato su GitHub già da alcuni anni ma che solo in questi giorni ha raggiunto la sua veste più matura.
Gli autori di Automerge hanno messo a punto un modello per lo sviluppo software chiamato local-first software con l'obiettivo di combinare il meglio di entrambi i mondi: software affidabile eseguito localmente abbinato a un'infrastruttura di collaborazione scalabile offline.

Il progetto prende le mosse dal concetto di CRDT (Conflict-free Replicated Data Type) che descrive una struttura di dati che semplifica la realizzazione di soluzioni di archiviazione di dati distribuiti nell'ambito di applicazioni multiutente.
Automerge consente di registrare le modifiche apportate ai dati e quindi riprodurle in altri luoghi in maniera tale che lo stesso risultato venga riprodotto in modo affidabile su ciascun dispositivo.

Con una soluzione come Automerge il programmatore può abilitare senza stress meccanismi di collaborazione in tempo reale all'interno delle applicazioni senza dover implementare complicati algoritmi lato server.

È possibile avere una copia dello stato dell'applicazione in locale su più dispositivi che possono appartenere allo stesso utente o a utenti diversi.

Fonte: www.ilsoftware.it