Есть сайт, на котором реализована работа с серверной частью(php) посредством ajax запросов. Все страницы находятся на одном домене, пользователь везде определяется через сессионные куки, последний номер события хранится там же.
К этому сайту был приделан longpoll, поддерживающий постоянное соединение с одной из страниц бэкенда, переподключение к странице после окончания ее загрузки(10 секунд), все работает как нужно.
Проблема в том, что если во время выполнения какого-то longpoll запроса вызвать еще один запрос, то он будет обработан только после возвращения результата от longpoll`a.
На vk.com, допустим, все работает отлично, во время longpoll запросов без проблем отправляются еще и другие, не ожидающие окончания друг-друга. Подскажите, пожалуйста, как можно добиться точно такого же результата?
В worker.js вставил один xhr запрос, не подходит. Меняется исключительно инициатор longpoll запроса. Все ajax, встроенные в страницу, все также не выполняются пока не окончится longpoll.
Проблема была в сессионном файле. Нашел решение без изменений в js.
В обработчике(php) перед частью, отвечающей за ожидание события: session_write_close();
Перед отправкой результата: session_start();