Всегда есть поток демона в Python

#python #multithreading #python-multithreading

Вопрос:

Допустим, у меня есть простая функция, которая должна сделать запрос GET, например:

 def the_function(url):
    requests.get(url)
    # further processing logic
 

Мне нужно, чтобы это постоянно выполнялось в моем приложении Django, так что это похоже на фоновую задачу, которая будет работать в отдельном потоке. Как я могу быть уверен, что у меня всегда работает один поток демона (единственный, кроме основного потока)? Единственное, что я мог придумать, — это создать рекурсивный цикл, но это в конечном итоге начнет потреблять гораздо больше ресурсов, чем должно.

Комментарии:

1. Вы можете изучить что-то вроде django-фоновые задачи

2. @GrajdeanuAlex, я не хочу использовать здесь какие-либо внешние инструменты, такие как Redis, RabbitMQ, python-rq, DBT, сельдерей…