Я использую phpredis (ветвь redis_cluster) со стабильной версией Redis (v3.0.4) поверх CentOS 7.1 (последняя версия) и PHP 5.6 (remi repo) с Apache (2.4.6)
Использование кластера с 3 мастерами (только тест).
Мой redis.ini содержит:
extension = redis.so
session.save_handler = rediscluster
session.save_path = "mycluster[]=192.168.1.100:6379&mycluster[]=192.168.1.100:6380&mycluster[]=192.168.1.100:6381&timeout=3&read_timeout=3&failover=error"redis.clusters.seeds = "mycluster[]=192.168.1.100:6379&mycluster[]=192.168.1.100:6380&mycluster[]=192.168.1.100:6381"redis.clusters.timeout = "mycluster=5"redis.clusters.read_timeout = "mycluster=10"
Имитация простой сессии магазина с PHP на Redis (кластер):
one.php:
session_start ();
$_SESSION['favcolor'] = 'green';
$_SESSION['animal'] = 'cat';
$_SESSION['time'] = time();
two.php:
session_start();
var_dump($_SESSION);
Получил это на ошибки Apache:
PHP Warning: session_start(): Cannot find save handler 'rediscluster' - session startup failed in /var/www/html/one.php on line 4
Есть идеи, в чем может быть проблема?
Удалить косую черту из save_path;)
Других решений пока нет …