lightalex
@lightalex

Как сделать фоновый вызов страницы PHP?

Доброго времени суток
Есть страница PHP, которая принимает данные через AJAX-запрос
Но после получения/сохранения данных мне нужно запустить другую PHP страницу, чтобы они обработала пришедшие данные
Обработчик должен запускаться в фоне (как CRON-скрипты)
Можно ли как-то с первой PHP-страницы (приемника) в таком режиме вызвать вторую PHP-страницу (обработчик)?
Смысл в том чтобы не задерживать AJAX-ответ, так как AJAX'у важно убедиться в успешном приеме данных, но не в обработке
Возможно есть какая-то альтернатива
Заранее благодарю за помощь!
  • Вопрос задан
  • 151 просмотр
Решения вопроса 2
NeLexa
@NeLexa
Используйте очереди, например Gearman.
Друие варианты асинхронности.
Ответ написан
Комментировать
@RoverWhite
Можно создать очередь, когда Ваш обработчик Ajax подготавливает и записывает данные для обработки, вносит задание на обработку в очередь (например в таблицу БД) и отвечает по AJAX что все записал.
Другой экземпляр PHP в CLI режиме запускается, читает очередь, и делает задание (запускается он уже по расписанию CRON например), или работает постоянно ожидая заданий из очереди.

Можно просто из скрипта запустить PHP в CLI режиме на обработку задания (popen pclose)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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