Skip to content

lainiwa/perx

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Тестовое задание PERX

Enpoints

  1. POST /enqueue -- поставить таск в очередь
  2. GET /peek -- посмотреть на очередь

Решения

  1. Отработанные задачи убираются из очереди и переносятся в список results (чтобы видеть вычесленные результаты).
  2. Для хранения данных использую список (а не asyncio.Queue), чтобы удобно смотреть на его содержимое.
  3. Храню количество пройденных итераций (а не вычисляю по формуле (current_val-n1)/d) чтобы избежать потенциальных проблем с ошибкой округления.
  4. Через переменную окружения PERX_WORKERS_NUM или через settings.toml можно регулировать количество воркеров.
  5. Сделал скрипт start.sh в качестве демо. Запускает серевер, создает 3 задачи, а потом бесконечно трогает /peek и выводит состояние очереди.

image

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published