1.首先想问一下一台redis服务器上有不同的项目,需要给redis的key加项目的前缀吗?还是用select不同数据库就好了?有12个可选
2.之前使用redis也只是简单封装了一下而已,就直接调用原生的redis接口,这样足够了吗?
$func = $options['persistent'] ? 'pconnect' : 'connect';
$this->handler = new \Redis;
$options['timeout'] === false ?
$this->handler->$func($options['host'], $options['port']) :
$this->handler->$func($options['host'], $options['port'], $options['timeout']);
$options['auth'] === false ?
'':
$this->handler->auth($options['auth']);
$this->handler->select($options['select']);
return $this->handler;
你要考虑到redis连接断了重连,要考虑到是否需要长连接,要考虑到对每个方法异常捕获,对异常做日志记录,要考虑到自己项目中多个redis配置,集群的单点的 根据不同的业务要配置多个redis胚子, 难道要每个都去写new Redis();connect();auth(); 一大堆?抽象成gateway封装缓存单例,封装底层驱动,所以你觉得有没有必要?当然如果你的项目真的很小或者。。。。那自然就没要了,随便调调redis好了啦