Загрузчик больших файлов реализован на современных технологиях HTML5
Мы создали сервис, позволяющий загружать в портал и передавать пользователям, файлы с высококачественными графическими материалами, обладающих большим объемом. Файлы не только необходимо быстро загружать через специальный интерфейс, но и ограничивать уровни доступа к данным, выстраивая роли и иерархию внутри системы.
Условно, в сервисе можно выделить 2 основные части:
Административная (менеджерская) часть. Для удобства и быстроты передачи файлов мы реализовали возможность загрузки файлов частями (файл делится на части, и каждая часть загружается в отдельном потоке на сервер). Благодаря этому решению, можно загружать файлы более 2 гигабайт, если загружать файл обычными методами, то загрузка файла в 1 гигабайт становится сложным и долгим процессом, а загрузка файла более 2гб, попросту невозможна ввиду ограничений клиентской части, реализованной при помощи - javascript).
Пользовательская часть. Для удобства пользователей реализовано получение файла без ограничений; любого размера и из любого браузера. Отличительная особенность в том, что файл не загружается сразу в память сервера, а подгружается частями. Это необходимо, для того, чтоб портал стабильно работал без замедления, с любым количеством пользователей.
Нагрузочный краш-тест портала:
одновременное получение 20 файлов общим размером более 30 гигабайт
параллельная загрузка 10 файлов общим размером более 15 гигабайт
имитация посещения пользователями сайта в количестве 20 000 человек за 10 минут
Статистика:
Пользовательский файлов: - более 40 гигабайт
В месяц более 400 000 просмотров страниц
В среднем на сайте человек проводит более 9 минут
Пользователи в основном: клиенты-оптовики, менеджеры компании, а также будущие клиенты, которые хотят начать свой бизнес вместе с порталом.
В рамках системы, благодаря особенностям языка Phyton (Django) выстроена сложная система иерархии пользователей и уровней доступа к информации. Особое внимание мы уделили безопасности проекта и защите хранилища данных от DoS-атак и хакеров, портал настолько интересен, что каждые 5 минут мы регистрируем, что формируется новый хеш для получения данных с сайта.