Lanzamiento de Automerge 3.0
(automerge.org)- Un motor de sincronización de datos local-first basado en CRDT que facilita el desarrollo de apps colaborativas, optimizado para la colaboración offline y el control de versiones
- El mayor cambio en 3.0 es que el uso de memoria se redujo más de 10 veces, lo que permite aplicarlo en una variedad mucho mayor de escenarios
- Automerge tiene una estructura que almacena todo el historial de cambios para ofrecer detección de conflictos y restauración del historial
- Antes existía el problema de que, al editar documentos, se descomprimían y el uso de memoria se disparaba de cientos de MB a varios GB
- En 3.0 se usa el formato comprimido también en tiempo de ejecución, reduciendo de raíz la carga de memoria
- Ejemplo: en una prueba pegando el texto completo de Moby Dick, 2.0 usó 700MB y 3.0 solo 1.3MB
- También en el servidor es más fácil gestionar al mismo tiempo documentos grandes, lo que permite construir apps colaborativas a gran escala
- Cuando el historial del documento es grande, la velocidad de carga también mejora entre decenas y decenas de miles de veces (17 horas → 9 segundos)
- Además, se reorganizaron a fondo las API relacionadas con el manejo de texto para reforzar la consistencia y simplicidad
- Las cadenas colaborativas se distinguen claramente como
string, y las cadenas no colaborativas comoImmutableString - Se eliminaron API duplicadas anteriores como
Text/RawString, y las API del namespacenextpasan a ser las predeterminadas
- Las cadenas colaborativas se distinguen claramente como
- Es casi perfectamente compatible con el código existente, mantiene el mismo formato de archivo y la gran mayoría de las API, por lo que se puede migrar de inmediato
- Consulta la guía de migración
2 comentarios
Oh, no sabía que existía esto.
Lanzamiento de Automerge 2.0
Yo estaba equivocado. Los CRDT son el futuro.
Optimización para CRDT más rápidos