У меня есть процесс, который нужно запускать для определенных вещей, и он не подходит для запуска на стороне пользователя (15+ секунд на обработку), поэтому я подумал об использовании задания cron, но опять же, это также не подходит, потому что это создаст обратный журнал. Я сузил свои варианты до запуска бесконечного процесса, который отслеживает изменения mysql, или настройки mysql для запуска сценария, когда он обнаруживает изменение, но последний - это не то, во что я хочу попасть, если это не единственный вариант, который оставляет меня с «бесконечной» возможностью мониторинга.
Что-то, что я рассматриваю в PHP:
while (true) {
$db->query('SELECT * FROM database');
while($row = $db->fetch_assoc()){
// do the stuff here
}
sleep(5);
}
, а затем запустить его через командную строку. Теперь это теоретически звук , но на практике это не так хорошо, как я надеялся, используя больше ресурсов, чем я ожидал (но не вне моего диапазона, просто не то, что я Стремлюсь оптимально). Поэтому мои вопросы таковы:
Является ли PHP неподходящим языком для этого? PHP - это то, с чем я работаю, но я понимаю, что бывают ситуации, когда это неправильный выбор, и я думаю, что, возможно, это так. Если да, какой язык мне использовать?
Есть ли лучший подход, который я не рассматривал, и это не те идеи, которые я перечислил?
Если PHP является правильным вариантом, как я могу оптимизировать код, который я разместил, есть ли способ лучше, чем спать в течение 5 секунд после каждой завершенной операции?
Заранее спасибо! Я открыт для любых идей, пока они не слишком далеко, я использую свой собственный сервер со свободным правлением, поэтому не существует теоретического ограничения на то, что я могу сделать.