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报错/

赞赏

微信赞赏支付宝赞赏

发表评论