La historia de la reescritura del motor de Sync de Dropbox
(dropbox.tech)-
Reescrito y desplegado en Rust a lo largo de 4 años
-
El núcleo principal (Control) funciona en un solo hilo y maneja el procesamiento asíncrono con futures
-
Funciona de manera completamente determinista frente a las entradas
→ Esto permitió hacer pruebas aleatorias y facilitó la reproducción de bugs
- Aspectos que consideraron antes de reescribirlo
✓ ¿Ya intentaron refactorizarlo?
✓ ¿Ya intentaron mejorar el rendimiento optimizando las partes clave?
✓ ¿Puede aportar valor adicional?
✓ ¿Entienden por completo el sistema actual?
✓ ¿Hay suficiente tiempo de desarrollo?
✓ ¿Es aceptable que se retrase el desarrollo de nuevas funciones en el motor existente?
✓ ¿Por qué creen que sería bueno reescribirlo?
✓ ¿Cuáles son los principios del nuevo sistema?
1 comentarios
Estas son las preguntas que hay que hacerse antes de decir “rehagamos” sobre un sistema existente.