Установка и настройка memcached на Centos
1.Подключение репозитариев, если они еще не подключены
Либо RPMForge
i386
rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.5.1-1.el5.rf.i386.rpm
x86_64
rpm -Uhv http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/RPMS//rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm
Установка ключа
rpm –import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
Либо EPEL-
# rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
2.Установка memcached
yum install memcached
3.Настройка,запуск,постановка в автозагрузка
nano /etc/sysconfig/memcached
PORT=»11211″
USER=»memcached»
MAXCONN=»1024″ # максимальное количество подключений
CACHESIZE=»64″ # размер памяти,выделяемой для memcached
OPTIONS=»-l 127.0.0.1″ #интрфейс,на котором слушать запросы(по умолчанию стоит сдушать на всех интерфейсах OPTIONS=»»
/etc/init.d/memcached start
chkconfig —level 2345 memcached on
Проверка запуска
[root@guk5 ~]# netstat -nlp | grep memcached
tcp 0 0 127.0.0.1:11211 0.0.0.0:* LISTEN 3782/memcached
udp 0 0 127.0.0.1:11211 0.0.0.0:* 3782/memcached
[root@guk5 ~]# ps ax | grep memcached
3782 ? Ssl 0:00 memcached -d -p 11211 -u memcached -m 64 -c 1024 -P /var/run/memcached/memcached.pid -l 127.0.0.1
3851 pts/1 S+ 0:00 grep memcached
Просмотр статистики
memcached-tool 127.0.0.1 stats
watch -d -n 1 «echo «stats» | nc localhost 11211″
Просмотр использования памяти Memcached
memcached-tool 127.0.0.1 display
Просмотр содержимого кеша
memcached-tool 127.0.0.1 dump | less
2.Установка библиотеки Memcached для PHP
yum install php-pecl-memcache
рестарт apache
/etc/init.d/httpd restart
Проверка работоспособности
php -i |grep memcache
memcache
memcache support => enabled
memcache.allow_failover => 1 => 1
memcache.chunk_size => 32768 => 32768
memcache.compress_threshold => 20000 => 20000
memcache.default_port => 11211 => 11211
memcache.hash_function => crc32 => crc32
memcache.hash_strategy => consistent => consistent
memcache.lock_timeout => 15 => 15
memcache.max_failover_attempts => 20 => 20
memcache.protocol => ascii => ascii
memcache.redundancy => 1 => 1
memcache.session_redundancy => 2 => 2
Registered save handlers => files user memcache
3.Настройка хранения php-сессий в memcached
Глобально для всех сайтов, размещенных на сервере
nano /etc/php.ini
;session.save_handler = files
session.save_handler = memcache
;session.save_path = «/var/lib/php/session»
session.save_path = «127.0.0.1:11211»
/etc/init.d/httpd reload
Если используется удаленный Memcached сервер
session.save_handler = memcache
session.save_path = «tcp://192.168.1.82:11211″
Если используется несколько Memcached серверов для хранения сессий
session.save_handler = memcache
session.save_path=»tcp:// 192.168.1.82:11211, tcp://192.168.1.82:11211″
Memcached также позволяет передавать параметры при конфигурации сессий
session.save_handler = memcache
session.save_path=»tcp://127.0.0.1:11211?persistent=1&weight=1&timeout=1&retry_interval=15»
Как альтернативу, можно использовать хранение php-сессий в memcached только для конкретных сайтов
В файл .htaccess в корне сайта добавляем
php_value session.save_handler memcache
php_value session.save_path 127.0.0.1:11211
Источники:
http://rxnblog.ru/ustanovka-memcached-na-centos-6.html
http://www.gisher.ru/blog/Gisher/ustanovka_memcache_na_centos_b-1459.html
http://2centos.ru/stat/view/172
http://wiki.hpfh.net/ustanovka-memcached-na-centos-6/
http://gluckov.net/page/ustanovka-memcahed-na-centos-linux-52-x86_64
http://metalcandy.ru/how-to-forge-centos/306-redhat-centos-install-memcached-caching-system