Как работает Dropbox?

Как работает Dropbox? Это просто FTP-клиент с простым в использовании веб-интерфейсом и поддержкой многих платформ?

Что делает его настолько полезным для программистов, даже для тех, кто работает с веб-приложениями и у которых есть FTP-доступ к серверу по умолчанию?

Есть ли Dropbox с улучшенным алгоритмом для облегчения передачи файлов для лучшей скорости? В чем разница между FTP-клиентом и Dropbox с точки зрения программиста?

Ответы

Ответ 1

FTP - это просто способ копирования файлов. И копирование - это не то же самое, что синхронизация, которая, по моему мнению, самая большая сила Dropbox.

Dropbox - это многопользовательская система синхронизации. Это означает, что если вы используете свою учетную запись Dropbox на многих машинах и редактируете разные файлы на каждой машине, все они будут синхронизированы соответствующим образом. С FTP вам нужно будет деликатно выбирать и выбирать, какие файлы нужно удалить или добавить с каждого клиента на сервер.

Другое главное отличие заключается в том, что синхронизация происходит автоматически, когда файл изменяется, а FTP не делает.

В терминах алгоритмов я бы предположил, что Dropbox использует дельта файлов для передачи файлов, что делает его намного более эффективным, чем FTP. Это означает, что передаются только те части файла, которые были изменены, вместо передачи всего файла каждый раз, когда он изменяется (см. rsync).

Я полагаю, вы только спрашиваете о функциональности ядра Dropbox. Помимо этого, у Dropbox есть много интересных функций, которые FTP не нравится в управлении версиями, совместном использовании фотогалереи и т.д.