php使用redis可忽略redis报错
1、php安装redis扩展
2、使用redis(无密码)
<?php
$REDIS_STATE=1;// 检测redis状态
try {
// redis 单台redis
$redis = new Redis();
//连接参数:ip、端口、连接超时时间,连接成功返回true,否则返回false
$redis->connect('127.0.0.1', 6379, 30);
//密码认证:成功返回true,否则返回false
//$ret = $redis->auth('xxww');
// $redis->close();//释放资源
}
catch(\ErrorException $e) {
$REDIS_STATE=0;
//echo '<br>error:'.$e.'<br>';
}
catch(\Exception $e) {
$REDIS_STATE=0;
//echo '<br>error-->'.$e.'<br>';
}
//服务器异常状态通知。
//定义类型,及通知过期时间, 在未过期时间内 同样类型的错误不再推送
// 包含redis的文件调用方式,
if($REDIS_STATE==1){
$redis->set('mystr', 'Welcome!xx');
//获取键值:成功返回String类型键值,若key不存在或不是String类型则返回false
$ret = $redis->get('mystr');
echo $ret;
}else{
echo 'redis error!';
}
探讨:在使用redis的时候通过$REDIS_STATE的值来判断redis的服务状态如何,如果服务状态异常,则php处理的时候需要停止操作redis转向直接操作数据库。这样会造成数据库压力加大,所以最好在redis报错的时候触发通知事件,方便及时响应。
每次决定操作或读取redis的时候可以先行判断redis状态与键值等状态,然后处理业务逻辑。
基于互联网精神,在注明出处的前提下本站文章可自由转载!
本文链接:https://ranjuan.cn/php使用redis可忽略redis报错/