laertan (laertan) wrote,
laertan
laertan

Сессии и время

Возникла потребность в создании самописных сессий на PHP.
В сущности, что нужно, чтобы организовать механизм сессий? Пустяки: чтение из файла, парсинг содержимого и поиск нужной переменной - с одной стороны; и чтение из файлы, парсинг содержимого, замена/запись нужной переменной - с другой стороны. Как два байта переслать.
Однако слепленный собственными руками механизм работает крайне медленно. Если запись/чтение в/из массива $_SESSION 150 переменных заняла/о 0.0003 секунды, то аналогичные операции с самодельным механизмом для тех же 150 переменных кушают 0.036 секунды. В 120 раз больше. Мягко говоря, безблагодатность.

После недолгого ковыряния выяснилось, что даже простые функции открытия и чтения файла (fopen и fread соответственно), будучи примененными 150 раз, выполняются ни много ни мало 0.0062 секунды (т.е. в 20 раз больше, чем вся работа с массивом $_SESSION вместе взятая). Ну и понятно, что парсинг переменных и их запись отжирает значительно больше времени, в результате имеем то, что имеем.

Я, конечно, понимаю, что внутренняя работа с файлами в PHP писалась на сях и оптимизирована по-всякому, но всё-таки разница в 100 раз - это перебор, товарищи.
Так жить нельзя.
Subscribe

  • Позитивный подход

    Возможно, вам приходилось сталкиваться в сети с творчеством граждан, которые любую нерадостную новость стремятся представить как очередную великую…

  • Сталин, Зиновьев и демократия

    В публицистике и блогосфере зачастую можно встретить утверждения, что-де Сталин разгромил всю оппозицию, опираясь на контролируемый им партаппарат.…

  • История, которую мы заслужили

    Ознакомился с двухтомной биографией В.М. Молотова, написанной его внуком В.А. Никоновым. Впечатления, мягко говоря, смешанные: - уровень изложения…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 0 comments