php cURL-запрос, вызывающий взаимную блокировку сеанса

У меня есть запрос, который использует сессию, чтобы проверить, аутентифицирован ли пользователь. Затем из этого запроса я делаю запрос cURL (который должен быть аутентифицирован) с использованием переменных сеанса.

Проблема заключается в том, что первый запрос ожидает завершения запроса cURL, и запрос cURL не может начать сеанс, пока не завершится первоначальный запрос. Я зашел в тупик, в результате чего истекло время ожидания обоих запросов.

Это можно обойти?

1

Решение

После обновления сеанса в первом скрипте,
использование session_write_close(); снять блокировку с файла.

В PHP 7 вы можете снять блокировку сразу после прочтения:

session_start([
'cookie_lifetime' => 86400,
'read_and_close'  => true,
]);

HHVM делает это по умолчанию.

Еще лучшим подходом было бы использование неблокирующего обработчика сеанса, такого как memcache.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector