trustno1
Новичок
нужны пояснения по работе PHP c оракловыми сессиями
Использую persistent-соединение с ораклом. При первом запросе создается сессия (status=INACTIVE), и она используется при последующих запросах. Однако через какое-то время при очередном выполнении скрипта создается еще одна сессия и запросы уже обрабатываются ей. Обнаружил, что создается около 4-х сессий для одного и того же USERNAME (SCHEMANAME) в течение дня. При этом, если убить наиболее старые по дате создания сессии, то можно при выполнении скрипта получить ORA-00022: invalid session ID; access denied. Т.е. PHP пытается воспользоваться одной из ранее созданных, но уже убитых сессий.
Подскажите, чем вызвано, что PHP создает новые сессии, если для этого же пользователя уже есть сессия? Почему сессии находятся в статусе INACTIVE (по идее должно быть ACTIVE)? Когда завершаются persistent-коннекты, только при убивании их вручную?
-~{}~ 18.06.05 10:42:
я так понимаю это может быть связано с тем, что php-скрипт выполняется разными процессами веб-сервера? Но у меня Apache2 под win, который как известно тредовый...
-~{}~ 18.06.05 10:51:
а еще вот такое бывает: ORA-00021: session attached to some other process; cannot switch session
Использую persistent-соединение с ораклом. При первом запросе создается сессия (status=INACTIVE), и она используется при последующих запросах. Однако через какое-то время при очередном выполнении скрипта создается еще одна сессия и запросы уже обрабатываются ей. Обнаружил, что создается около 4-х сессий для одного и того же USERNAME (SCHEMANAME) в течение дня. При этом, если убить наиболее старые по дате создания сессии, то можно при выполнении скрипта получить ORA-00022: invalid session ID; access denied. Т.е. PHP пытается воспользоваться одной из ранее созданных, но уже убитых сессий.
Подскажите, чем вызвано, что PHP создает новые сессии, если для этого же пользователя уже есть сессия? Почему сессии находятся в статусе INACTIVE (по идее должно быть ACTIVE)? Когда завершаются persistent-коннекты, только при убивании их вручную?
-~{}~ 18.06.05 10:42:
я так понимаю это может быть связано с тем, что php-скрипт выполняется разными процессами веб-сервера? Но у меня Apache2 под win, который как известно тредовый...
-~{}~ 18.06.05 10:51:
а еще вот такое бывает: ORA-00021: session attached to some other process; cannot switch session