Как запустить файл php api из другого файла php api после определенной задержки и без использования sleep ()?

У меня есть две спокойные конечные точки api; DispatchJob_Public.php и selectDriverForJobResult.php, и мне нужно вызвать selectDriverForJobResult.php из DispatchJob_Public.php после пара минут. Как я могу сделать это без с помощью спать()? Потому что я не могу позволить себе перевести сервер в режим ожидания (из-за функции сна).

Я написал функцию на javascript и ajax для вызова второго файла (selectDriverForJobResult.php), и она отлично работает, когда я попадаю в конечную точку непосредственно из браузера, но js не работает, когда файл вызывается из андроид или почтальон.

Поэтому мне нужно решение для этого, функции не включает в себяcron работа, javascript и спать().

Большое спасибо.

Можете ли вы объяснить, почему возник разрыв two minutes?

nice_dev 26.07.2018 09:29

Кроме того, если вам не нужно решение cron job, удалите теги из своего вопроса.

nice_dev 26.07.2018 09:31

@ vivek_23, потому что второй файл будет собирать данные о драйверах, которые будут делать ставки в эти две секунды. Так что нужен двухминутный перерыв.

Awais Khan 26.07.2018 09:37

Единственный лучший вариант, который я вижу здесь для вас, - это реализовать систему очередей, которая на самом деле будет зависеть от задания cron, запускающего их за вас. Постоянное выполнение задания cron с файлом и проверка таблицы базы данных на предмет наличия каких-либо заданий в очереди, которые необходимо запустить. Другой вариант - если вы используете php как PHP-FPM, а не как модуль apache. Тогда вы можете узнать больше о: php.net/manual/en/function.fastcgi-finish-request.php

Ole Haugset 26.07.2018 09:45

Очередь @OleHaugset приемлема, но cronjob мне здесь не поможет. Дело в том, как передать параметры в cronjob для проверки того, полны ли две минуты или нет? Во-вторых, я запускаю php как CGI / FastCGI. Но я не могу запустить функцию fastcgi_finish_request (). Вы можете порекомендовать мне подробную документацию по этой функции?

Awais Khan 26.07.2018 13:33
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
5
75
1

Ответы 1

прямо с php, нет возможности

вы можете написать файл bash и выполнить его с помощью системы

startBatch.sh

 sleep 2m
 php /path/fo/file.php

в вашем первом файле

system('./startBatch.sh >> null');

Если программа запускается с этой функцией, чтобы она продолжала работать в фоновом режиме, вывод программы должен быть перенаправлен в файл или другой поток вывода. В противном случае PHP зависнет до завершения выполнения программы.

Ole Haugset 26.07.2018 09:34

Да, @OleHaugset, это верно, и я не могу использовать сон, потому что, если бы было, скажем, 100 запросов за одну минуту? Система не сможет обработать ни один из них, если я сплю.

Awais Khan 26.07.2018 09:41

@OleHaugset исправил

Kapsonfire 26.07.2018 09:47

Другие вопросы по теме