@David5

Распределение задач в django?

У меня есть задача в django проекте
while True:
    #вызывает функцию

но пока работает while я не могу использовать django, обновить сайт, перейти на страничку, т.к while в очереди, как сделать распараллеливание, чтобы while выполнялся отдельно, другие задачи отдельно, асинхрон возможно, но хз как точно, подскажите, заранее спасибо люди.
  • Вопрос задан
  • 127 просмотров
Решения вопроса 2
@deliro
асинхрон

а ещё мегатрон, позитрон и другие 9 друзей Оушена асинхрона

1. Делаешь кастомную команду
2. Запускаешь её с отдельном контейнере докера, по крону, в отдельном потоке или как тебе прикажет сердце
3. Радуешься
Ответ написан
Комментировать
sergey-gornostaev
@sergey-gornostaev Куратор тега Django
Седой и строгий
Пригласить эксперта
Ответы на вопрос 1
@David5 Автор вопроса
Спасибо за советы, но мне нужно было просто while True засунуть в отдельный поток
не хотел возится с разными контейнерами и тд
сделал вот так, не знаю как это правильно или нет, но работает
def main():
    while 1:
        for i in Profiles.objects.all():
            current = time.time()
            current = str(current).split(".")[0]

            period_time = int(i.unix_date) + (int(i.period) * 60) * 60

            if period_time < int(current): 
                period(start_profil=i)
                

                current = time.time()
                current = str(current).split(".")[0]

                Profiles.objects.filter(name=i).update(unix_date=int(current))

            
        time.sleep(1000)


a = Thread(target=main)
a.start()
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы