Skip to content
This repository has been archived by the owner on Jul 12, 2024. It is now read-only.

Latest commit

 

History

History
31 lines (24 loc) · 2.03 KB

README.md

File metadata and controls

31 lines (24 loc) · 2.03 KB

Загрузка и распарсивание текстовых файлов

Ответ на тестовое задание:

Сервис загрузки и парсинга текстовых файлов

  • Должна быть форма загрузки файла
  • Файлы могут быть большими (несколько терабайт), поэтому необходимо реализовать асинхронную обработку файлов (например, с помощью Celery или иной библиотеки)
  • После запуска процесса (это может быть отправка формы, нажатие на кнопку запуска и т.д.), должен отобразиться прогресс загрузки файла и его обработки
  • При перезагрузке страницы приложение должно понимать, что обработка в процессе и возобновлять отображение прогресса (каждый процесс должен иметь уникальный URI, по которому можно отслеживать его состояние)
  • В качестве парсера использовать подсчёт количества символов в файле
  • Значение имеют алгоритмы, документация, тесты и PEP8
  • Использование web-фреймворка и дополнительных библиотек не имеет особого значения

Для запуска проекта необходим docker и docker-compose

Запуск (остановить можно через Ctrl+C):

docker-compose up

Удаление контейнеров, сети, томов:

docker-compose down -v

Запуск тестов:

docker-compose run backend test text_parse

Также существует файл run_tests.sh в корне, который делает тоже самое.