У меня есть веб-сайт, работающий в стандартной конфигурации: Linux, Apache, PHP, MySQL.
Однако что в нем нетипично, так это то, что он получает тонны трафика (более 400 000 посещений в день), и поэтому эффективность становится для меня все более и более важной.
Я постоянно ищу то, что можно оптимизировать, и сейчас мое внимание сосредоточено на файлах сессий PHP.
Чертовски много файлов сеансов постоянно читаются и создаются на /tmp
каталог.
Итак, мой вопрос: хорошо ли хранить файлы сеанса в /dev/shm
(tmpfs), чтобы немного ускорить ??
/dev/shm
: НЕТ!/dev/shm
имеет определенное значение: он предназначен для использования в качестве резервного хранилища подсистемы межпроцессного взаимодействия с общей памятью. Файлы там должны быть созданы с использованием shm_open (3) и эти файлы обычно предполагается использовать в качестве сопоставлений разделяемой памяти между взаимодействующими процессами. Тот факт, что это место реализовано как файловая система с поддержкой памяти, является деталью реализации.
Если вы хотите где-то хранить временные файлы, создайте для этой цели собственную точку монтирования. Другой вариант, который вам следует рассмотреть, - использовать что-то другое для этих файлов сеанса, например, хранилище базы данных (возможно, таблицы MEMORY MySQL с использованием ваших собственных обработчик сеанса или PgSQL).