Skip to content

Асинхронный микросервис для загрузки файлов единым архивом.

Notifications You must be signed in to change notification settings

ITerekhov98/async-download-service

 
 

Repository files navigation

Архивация данных и отправка их по сети с помощью aiohttp

Запуск с помощью docker-compose

Скачайте репозиторий с кодом, создайте .env файл и заполните его данными, в формате Key=value:

  • PHOTOS_DIR_PATH - директория в которой скрипт будет искать фото для архивации и отправки. По умолчанию используется test_photos в каталоге приложения.
  • OUTGOING_ARCHIVE_NAME - названия архива, который будет отправлен пользователю. По умолчанию test_photos.zip. Обратите внимание что указывать имя файла необходимо с .zip расширением.

Запустите сборку командой:

docker-compose -f docker-compose.yml build

И запустите контейнер:

docker-compose -f docker-compose.yml up -d

Логи можно посмотреть с помощью команды:

docker-compose -f docker-compose.yml logs -f

Установка и запуск вручную

Скачайте репозиторий с кодом, установите необходимые зависимости:

pip install -r -requirements.txt

Запустите сервер командой:

python server.py

Настройка

Вы можете легко изменить некоторые конфигурационные настройки:

  • С помощью аргументов командной строки:
    • --skip_logging - Отключает подробное логгирование, выводиться будут только сообщения уровня WARNING и выше.
    • response_delay - Задержка между отправками частей архива, может быть полезна для отладки.
  • С помощью переменных окружения:
    • PHOTOS_DIR_PATH - директория в которой скрипт будет искать фото для архивации и отправки. По умолчанию используется test_photos в каталоге приложения.
    • OUTGOING_ARCHIVE_NAME - названия архива, который будет отправлен пользователю. По умолчанию test_photos.zip. Обратите внимание что указывать имя файла необходимо с .zip расширением.

About

Асинхронный микросервис для загрузки файлов единым архивом.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 50.9%
  • Python 45.5%
  • Dockerfile 3.6%