#php #curl
#php #curl
Вопрос:
У меня есть PHP-скрипт, который необходимо вызвать с запросом cURL, однако в скрипте есть несколько таймаутов, и для завершения обработки требуется некоторое время.
Есть ли способ ответить на первоначальный запрос cURL, пока скрипт все еще обрабатывает, чтобы запрос cURL мог закрыться, но данные все еще обрабатываются, и пользователю не остается огромного времени ожидания?
Редактировать
По сути, мой скрипт представлял собой задание cron, которое вызывало API для обновления моей БД, задание cron можно было запускать только каждую минуту, и нам нужно было, чтобы оно выполнялось более регулярно, поэтому мы установили в нем тайм-аут следующим образом:
$expireTime = time() 59;
while (time() < $expireTime) {
// make cURL request to API
sleep(5);
}
Мы пытаемся перейти на AWS и снизить затраты, поэтому мы не хотим выделять процессор. мы пытаемся выяснить, можем ли мы использовать лямбда-функцию для выполнения запроса cURL, но если с нас взимается плата за время обработки лямбда-функций, и это должно подождать завершения php-скрипта.обработка каждый раз, когда это не вариант.
Я хочу, чтобы мой php-скрипт мог отвечать ответом 200, чтобы лямбда-выражение не ждало, и мой php-скрипт мог завершить то, что ему нужно сделать.
Комментарии:
1. Можете ли вы поделиться своим кодом?
2. вы пробовали мой ответ? Даже после вашего редактирования это все равно звучит так, как вы ищете. Поместите код перед любой «тяжелой» обработкой.
Ответ №1:
Это похоже на то, что вы ищете…..
http_response_code(200);
Если нет, вы должны показать часть своего кода и дать понять, в чем заключается проблема.