Задать вопрос
@WebmasterW3S
Веб-программист

Почему сайт не открывается пока открывается другая страница сайта?

Здравствуйте! Есть такая ситуация что на странице сайта, после её открытия выполняется тяжёлый ajax-запрос на сервер для получения множества дополнительных данных. Выполняется он порядка 5-10 секунд и ускорить это не представляется возможным. И я заметил что пока он не выполнится - невозможно перейти на другую страницу сайта или открыть её в новой вкладке пока не выполнится данный запрос. То есть остальные страницы будут грузиться, пока не отработает этот тяжёлый ajax-запрос. Причём это касается только того, пользователя, у которого выполняется запрос. Других пользователей сайта данный запрос никак не тормозит. То есть это как-то привязано к конкретной сессии пользователя, чтобы он не мог выполнять более 1 запроса одновременно. Сервер - обычный дебиан со стандартной установкой ISPManager. Скажите, пожалуйста, можно ли как-то заставить сервер обрабатывать несколько запросов одного пользователя одновременно и как? Спасибо!
  • Вопрос задан
  • 149 просмотров
Подписаться 1 Средний Комментировать
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Как только открыли сессию через session_start, файл сессии блокируется до завершения работы скрипта или завершения работы с сессией через session_abort, session_commit или session_write_close.
Если ваш тяжёлый скрипт не нуждается в данных сессии до самого конца работы, то можете просто закрыть сессию сразу после использования сессионных данных.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
New_Horizons
@New_Horizons
Бред:
Блокировка сессии.
https://www.php.net/manual/ru/features.session.sec...

Проще всего будет убрать тяжёлый запрос в фон, а по аяксу только запускать его, и периодически проверять статус.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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