Apache кэширует данные SESSION в памяти, когда я использую обработчик файлов для сессии? - PullRequest
0 голосов
/ 25 февраля 2010

В PHP, когда я использую обработчик файлов для хранения сессии, Apache кеширует SESSION в памяти?
Если нет, было бы неплохо использовать механизм хранения БД для таблиц памяти (mysql)?

1 Ответ

3 голосов
/ 25 февраля 2010

Apache сам по себе не «кеширует» файл сеанса в память: Apache не имеет ничего общего с сеансом: это чисто нечто, связанное с PHP и не связанное с Apache.

Сам PHP также не "кэширует" файл сеанса в память: он записывает его на диск (И, для безопасности, операционная система, вероятно, действительно записывает этот файл на диск)


Использование базы данных может помочь, возможно, в доступе к диску; но это означало бы сетевое подключение к другому серверу, это заставило бы MySQL работать ... Не обязательно так здорово.

Вместо этого я бы предпочел использовать memcached для хранения моего сеанса; это сетевой демон (который работает в кластерах, что означает, что вы можете иметь несколько машин с серверами memcached - полезно, если на одном сервере недостаточно памяти) , который хранит данные в памяти.

И memcached довольно часто используется для хранения данных сеанса - в настоящее время я использую memcached для этого (среди прочего) в проекте.

См. раздел memcache руководства по PHP: вам нужно установить расширение PHP, если вы хотите общаться с memcached.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...