class RedisCluster{
protected $servers=array(
'192.168.2.155:7000',
'192.168.2.155:7001',
'192.168.2.175:7002',
'192.168.2.175:7003',
'192.168.2.160:7004',
'192.168.2.160:7005'
);
protected $optionParam=array(
'timeOut'=>3,
'readTime'=>3,
'persistent'=>true //是否复用链接
);
public function __construct($servers=array(),$optionParam=array())
{
if(!empty($servers) && is_array($servers)){
$this->servers=$servers;
}
if(!empty($optionParam) && is_array($optionParam)){
$this->optionParam=$optionParam;
}
}
/**
* 获取predis对象
*/
public function getInstance(){
$redisCluster= new \RedisCluster(null,$this->servers,
$this->optionParam['timeOut'],
$this->optionParam['readTime'],
$this->optionParam['persistent']
);
//主从节点 读取分配策略
$redisCluster->setOption(\RedisCluster::OPT_SLAVE_FAILOVER,\RedisCluster::FAILOVER_DISTRIBUTE_SLAVES);
return $redisCluster;
}
}