Nie można mieć kilku wątków na sesję

Przygotowuję kilka aplikacji internetowych i zaimplementowałem długie odpytywanie (i kolejkę poleceń w mojej db), więc mój serwer może wysyłać polecenia do mojego serwera asynchronicznie itd. Polecenia są zakodowane w jsonie i wysyłane przez wywołania ajax dla klienta na serwer, i poprzez długie odpytywanie dla serwera na sposób klienta.

Wszystko działało dobrze, dopóki nie włączyłem mojego modułu uwierzytelniania do pliku ajax.php. Ten moduł opakowuje elementy sesji i wywołuje session_start ().

Problem polega na tym, że moja długa procedura odpytywania może czekać do 21 sekund przed powrotem do klienta. W tym czasie serwer nie uruchomi niczego z tej samej sesji. Zamiast tego jest wykonywany zaraz po zwróceniu długiego wywołania do odpytywania ajax.

Rozumiem, że prawdopodobnie istnieje ograniczenie tylko 1 wątku na sesję na raz i że żądania są ustawiane w kolejce.

Oto pytanie: jaki jest najlepszy sposób na rozwiązanie tego problemu? Czy istnieje ustawienie zezwalające na kilka wątków na sesje (w moim przypadku 3 byłoby w porządku). Lub powinienem po prostu wysłać klientowi informację, jaki jest jego identyfikator SessionID (w tabeli db mam kilka sesji, aby śledzić, który użytkownik jest połączony z jaką sesją). Klient może następnie wysłać go wraz z dowolnymi wywołaniami ajaxowymi, aby moduł uwierzytelniania mógł zostać pominięty.

W późniejszej opcji obawiam się, że otworzy kilka problemów związanych z bezpieczeństwem z powodu ewentualnego fałszowania sesji. Musiałbym wysłać „losowy ciąg” do każdej sesji, aby upewnić się, że nie da się zbyt łatwo sfałszować, ale nawet wtedy nie jest to idealne ...

Dziękuję za awnsers :)

Nicolas Gauthier

questionAnswers(1)

yourAnswerToTheQuestion