Чтобы удалить неиспользуемый файл, нужно знать, какие документы на него ссылаются. Есть и второе условие: новая ссылка не должна появиться, пока файл удаляется или уже удалён. Поэтому очистку файлов приходится согласовывать с сохранением документов. Если ответ базы потерялся, нужно ещё установить, не появилась ли ссылка, о которой приложение пока не знает.
При передаче большого файла расход памяти зависит от того, насколько чтение опережает запись у получателя. Даже фрагменты по 64 КиБ могут накопиться на целый файл, если беспрерывно готовить следующие части. Объём очереди можно ограничить, связав новое чтение с подтверждением записи у получателя. Тогда медленный получатель заставит отправителя подождать.
Мы с вами уже научились загружать файлы с помощью File API, Drag & Drop и XMLHttpRequest. Теперь мы можем развить тему применения новых технологий и рассмотрим возможность редактирования изображения еще до закачки на сервер. Для этого нам понадобятся следующие особенности HTML5.
Все больше и больше новых спецификаций W3C реализуется в браузерах. Сейчас я вам хочу продемонстрировать как может выглядить закачка файлов с помощью современных технологий. В данном случае будут использоваться File API, Drag & Drop и XMLHttpRequest.