IMHO.WS

IMHO.WS (https://www.imho.ws/index.php)
-   Веб-программирование (https://www.imho.ws/forumdisplay.php?f=29)
-   -   PHP и файловый кэшинг (https://www.imho.ws/showthread.php?t=133954)

Viro_man 24.07.2008 00:02

PHP и файловый кэшинг
 
Никогда не думал, что столкнусь с этой проблемой, пхп сервак бежит под виндой и не знаю, как проблему решить. Решил через $_SESSION кое какие параметры добавлять и какое было моё удивление, когда обнаружил, что вроде как бы добавляю в сессион данные, а когда вызываю обратно, то там старые значения, при том поведение случайное, то старые значения, то новые, то по очереди. Думаю, раз не идёт через сешн, то попробую сохранять в темп файле нужные значения, а потом зачитывать, и каково было моё удивление, когда значения в файле меняются и я могу изменения наблюдать, то при чтении этого файла через пхп подаётся старое содержание, и только потом меня осенило, что пхп и сессион хранит на жёстком диске и потому кэшинг файлов равнозначен для обоих способов. Теперь я не понимаю, как мне от этого избавиться, как кэшинг файлов самим пхп выключить, чтобы он даже файл сессион зачитывал некэшированным..

добавлено через 1 минуту
Я вот думаю, если я между делом буду зачитывать другой файл, поможет ли?

RaZEr 24.07.2008 00:08

Существует немало других механизмов сессий. SQL, memcache и т.д.

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

Viro_man 24.07.2008 01:27

Цитата:

Выруби всякие ускорители.
Нет никаких ускорителей, всё стандартом..

Цитата:

Далее смотри свой код, возможно просто через жопу сделал и получается две сессии на одного человека - то одна вылазит, то другая.
Всё смотрел, всё перелопатил, проблема ещё раз повторюсь, не в сессии, а в чтении файлов. Я же говорю, то же самое, что сделал через сессию, решил сделать через файл, и получилась та же фигня. Файл считывается с харда, но подаётся содержание старое вместо нового, а когда этот же файл открываешь внешней программой, то видишь новое содержание, в то время как пхп видит старое...
А есть в пхп нечто типа memcache?

добавлено через 1 минуту
PS: SQL я уже принимал во внимание, и хотел сделать завтра. Но мемкэш интереснее...

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

добавлено через 20 минут
Так, кажется нашлось то, что работает глобально, но пока на все сто не уверен, надо будет завтра на рабочей машине перепроверить.
putenv("UNIQID=someting")
getenv, типа то же самое, только прочесть.

Hubbitus 24.07.2008 01:38

Цитата:

Сообщение от Viro_man (Сообщение 1575027)
Я же говорю, то же самое, что сделал через сессию, решил сделать через файл, и получилась та же фигня. Файл считывается с харда, но подаётся содержание старое вместо нового, а когда этот же файл открываешь внешней программой, то видишь новое содержание, в то время как пхп видит старое...

Бред какой-то, честное слово.
Показывайте код, и постарайтесь подробно описать как увидеть такую ситуацию.

BorLase 24.07.2008 02:27

проблема 100% не в PHP - сколько лет на нем работаю, никогда о подобном и не слышал

скорей всего грабли или в каких-то посторонних программах, или в коде

Viro_man 24.07.2008 11:22

Цитата:

проблема 100% не в PHP - сколько лет на нем работаю, никогда о подобном и не слыша
Да, твоя правда, нашёл сегодня причину, проблема не в пхп, а в ajax, это там у меня включён хэшинг, и потому он даже вызывая страницу просто из хэша суёт мне содержание, а переменные в $_SESSION естественно не изменяются, поскольку просто навсего этот скрипт даже не производится.


Часовой пояс GMT +4, время: 20:34.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.