@StarsNight

Как выполнить action с долгим временем работы на Yii2?

Есть задача с потенциально бесконечным временем выполнения (тоесть долгая). Задача простая - пользователь нажал кнопку, задача запустилась. Но происходит разрыв сессии из-за таймаута. Как вариант, можно слать аякс-запрос в action, в внутри будет запуск запуск скрипта через интерпретатор (своего рода эмуляция многопоточности). И все бы ничего, но мне нужно именно подгружать объекты Yii (модели) и работать с ними. А запуск в консоли wget выглядит уж слишком костыльно. Какие посоветуете решения?
  • Вопрос задан
  • 418 просмотров
Решения вопроса 1
copist
@copist
Empower people to give
Короткий ответ: очереди.
Ищи информацию про Yii + RabbitMQ/ActiveMQ/ZeroMQ

Или сделай свою реализацию - сохранить файл-задание в специальную папку, а по крону запускать консольную команду, которая будет эти файлы-задания обрабатывать. Вместо папки можно базу данных использовать.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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