Memcached – это реально хорошее средство, чтобы снизить нагрузку с вашего сервера и получить более высокую производительность. Настроим PHP для хранения сессий в Memcached, а не в файловой системе.
Зачем хранить сессии РНР в Memcached?
Т.к. оперативная память на много порядков быстрее , чем жесткие диски (HDD) или твердотельные накопители (SSD), лучше кэшировать сессии в оперативной памяти, вместо файловой системы на веб-сервере. Это позволит существенно снизить нагрузку на сервер и повысит его производительность. Есть одно но, если хранить сессии на жестком диске, они могут оставаться там постоянно, а если использовать оперативную память, то после перезагрузки системы, все сессии будут удалены.
Установку PHP мы уже сделали, поэтому чтобы настроить хранение всех сессий в Memcached, надо изменить переменные в файле php.ini
- Для пользователей Ubuntu
sudo nano /etc/php5/apache2/php.ini |
- Для пользователей CentOS
sudo nano /etc/php.ini |
Находим следующие переменные:
session.save_handler session.save_path |
Заменяем значения на следующие:
session.save_handler = memcached session.save_path = “127.0.0.1:11211” |
Если Memcached установлен на другом сервере, а не на localhost (пример 192.168.0.10):
session.save_handler = memcached session.save_path = “tcp://192.168.0.10:11211” |
Если использовать несколько Memcached серверов (пример 192,.168.0.10, 192.168.0.20 и т.д.):
session.save_handler = memcached session.save_path = “tcp://192.1680.10:11211, tcp://192.168.0.20:11211” |
Так же есть возможность передавать параметры при конфигурации сессий:
session.save_handler = memcached session.save_path=”tcp://127.0.0.1:11211?persistent=1&weight=1&timeout=1&retry_interval=15″ |
Для применения изменений, надо перезапустить сервис Apache:
- Для пользователей Ubuntu
sudo service apache2 restart |
- Для пользователей CentOS
service httpd restart |
Если вы используете PHP-FRM:
- Для пользователей Ubuntu
sudo service php5-fpm restart |
- Для пользователей CentOS
service php-fpm restart |
Views: 11