Добрый день.
Есть база данных где хранятся квесты:
Необходимо сделать регистрацию на каждый квест (к примеру регистрация будет в одном квесте 3 часа, а в другом 5 часов) => я делаю это так: прохожу раз в час кроном и проверяю время регистраций, если какое то вышло, то меняю статус квеста на "запущен"
Суть квеста: игроки ходят по карте и кликают куда хотят пойти + сражаются. Будет таблица для данных этой карты и другой крон будет запускать скрипт к примеру раз в 10 секунд для обновления данных в этой таблице + буду дергать на фронт данные и обновлять визуальзицию.
Вопрос: не могу понять как именно запустить крон который будет обновлять таблицу с данными. Крон должен запуститься только тогда, когда статус квеста будет "запущен". То есть один крон должен ходить по квестам и менять статусы, а второй должен запускать обновление таблицы с данными каждого квеста. Но второй должен запуститься только при активности квеста а не просто так по времени. Активность квеста можно проверить выдернув данные из бд и проверив статус. Соответственно если статус изменился на неактивный, второй крон должен тормозить работу
Есть мысль: оба крона запущены сразу, к примеру один раз в 1 час, второй раз в 10 секунд. Во втором постоянно проверяется статус (php) и если он неактивен, завершаем скрипт. Квестов будет много, поэтому внутри скрипта php нужно проверять какой квест выполнять и через include подцеплять нужную логику каждого квеста и выполнять (изменять строки с данными по каждому квесту) Но не знаю на сколько это правильно.
Всем добра!