Интересная часть этого проекта, сначала я написал простой цикл for, и это заняло 40 минут, затем реализовал многопроцессорную и пакетную концепцию, теперь это занимает всего 4 минуты.

Точно так же, когда я загружал 60 000 записей из InfluxDB и загружал в браузер, почти мой браузер завис, затем я использовал разбиение на страницы Javascript, и он довольно прилично смог загрузиться в течение нескольких секунд.

Требования

  • докер 20.10+ (20.10.5)
  • docker-compose 1.28+ (1.28.5)
  • докер с 6CPU 8GB

ВХОД

  • CSV-файл
  • Формат данных, заголовок должен быть похожим
  • Пример данных
name,url
google,https://www.google.com
gnanam,https://ggnanasekaran.com

Чтобы ЗАПУСТИТЬ это приложение на macOS

unzip urlrag.zip
# or
# git clone [email protected]:ggnanasekaran77/urlrag.git
cd urlrag
# URL_CSV_FILE=<<File Path>> docker-compose up
# Example below
URL_CSV_FILE=/tmp/urls.csv docker-compose up -d
# or
URL_CSV_FILE=./urls.csv docker-compose up -d
# To shutdown
docker-compose down

Чтобы открыть это приложение

If local in-browser open http://localhost:8000
If any server http://server_ip:8000

Стек технологий

  • Питон 3.9
  • FastApi
  • InfluxDB — База данных серьезного времени
  • Шаблон Jinja2
  • Действия на GitHub
  • HTML
  • Разбиение на страницы Javascript

Демонстрационное видео



URL-адрес GitHub