У меня очень маленькая часть сайта Django, которая поддерживает состояние модерируемого сеанса чата между двумя пользователями. По сути, первый пользователь говорит в течение 3 минут (и никто другой не может), затем второй пользователь говорит, затем 30-секундная пауза, и процесс повторяется еще один раз. В настоящее время я использую базу данных и модель RoomState для управления текущим состоянием комнаты (кто может говорить и т. Д.). На переходы состояний влияет то, что клиент отправляет сообщение AJAX POST «ping» каждые 10 секунд одному из моих представлений, которое проверяет, пора ли менять состояние.
Это работает, но определенно чувствует себя хакером. Мне было интересно, есть ли что-то более легкое, чем django-celery + rabbitmq для управления недолговечными фоновыми задачами по таймеру. Я понимаю, что природа сети / Django не имеет состояния, но я просто хотел посмотреть, есть ли у кого-нибудь простое предложение по управлению переходами состояний более надежным способом.