Die Geschichte der Neuentwicklung von Dropboxs Sync-Engine
(dropbox.tech)-
Über 4 Jahre hinweg in Rust neu entwickelt und ausgerollt
-
Die Hauptkomponente (Control) läuft Single-Threaded und verarbeitet asynchron mit Futures
-
Arbeitet für Eingaben vollständig deterministisch
→ Dadurch werden Zufallstests möglich und Bugs lassen sich leicht reproduzieren
- Punkte, die vor der Neuentwicklung bedacht wurden
✓ Habt ihr Refactoring ausprobiert?
✓ Habt ihr die Leistung verbessert, indem ihr die Kernbereiche optimiert habt?
✓ Könnt ihr zusätzlichen Mehrwert schaffen?
✓ Versteht ihr das aktuelle System vollständig?
✓ Ist genügend Entwicklungszeit vorhanden?
✓ Ist es akzeptabel, dass sich die Entwicklung zusätzlicher Funktionen für die bestehende Engine verzögert?
✓ Warum glaubt ihr, dass eine Neuentwicklung besser wäre?
✓ Was sind die Prinzipien des neuen Systems?
1 Kommentare
Das sind wohl die Fragen, die man stellen sollte, bevor man über ein „Lasst es uns neu entwickeln“ für ein bestehendes System spricht.