Dropbox의 Sync엔진 재개발 이야기
(dropbox.tech)- 4년에 걸쳐 Rust로 재개발해서 배포
- 메인(Control)은 싱글쓰레드로 동작하고 futures로 비동기 처리
- 인풋에 대해 완전 결정론적으로 동작
ㅤ→ 난수 테스트 가능해지고, 버그재현이 쉬워짐
ㅤ
- 재개발 하기전에 고려한 부분들
✓ 리팩토링 해봤나요 ?
✓ 주요부분 최적화 해서 성능 개선 해봤나요 ?
✓ 추가적인 가치를 줄수 있나요 ?
✓ 현재 시스템 이해는 완벽히 다 하고 있나요 ?
✓ 개발시간은 충분한가요 ?
✓ 기존 엔진에 추가 기능개발이 늦어지는것도 수용가능한가요 ?
✓ 왜 다시 개발하면 좋을거라고 생각하시나요 ?
✓ 새 시스템의 원칙은 뭔가요 ?