php redis 集群扩展类文件
2024-09-02 15:18:36
<?php
/**
* redis集群驱动
*/
namespace Common\Api; 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;
}
}
最新文章
- JavaScript学习笔记(二)——闭包、IIFE、apply、函数与对象
- Linux之服务器时间同步
- 最近读的javascript,一些文章
- 【性能测试】性能测试总结<;四>;
- 使用Maven Profile实现多环境构建
- C基础 北京大公司面试简单总结
- LeetCode 55
- 2016 系统设计第一期 (档案一)MVC form数据提交
- 简单重置Centos服务器中Mysql的root密码
- Bootstrap_Javascript_选项卡
- Jenkins 快速搭建持续集成环境
- 使用WIX打包客户端程序
- 关于在框架中使用curl的思考,以及,curl其实很好用
- 真正实现Netty私有协议开发
- 常见设计模式 (python代码实现)
- asp.net MVC jsonp跨域获取数据
- modelform添加属性
- button高度改变
- Strongly connected HDU - 4635(判断强连通图 缩点)
- laravel的函数asset()、url()