redis缓存,如何判断从redis中读取缓存还是从数据库中读取数据?

当页面刷新的时候,如何判断是从redis中读取数据还是从服务器读取数据,因为先要经过判断redis中是否有值这步操作,如果有值,那就读取。那么如何进入数据库读取呢?

阅读 12.2k
4 个回答

如果想从访问中知道就像这样:

if($redis_data){
    header("hit: redis");
    return $redis_data;
}else{
    #sql select
    header("hit: mysql");
    return $sql_data;
}

然后查看返回头就好了

缓存是有有效期的,在get缓存的时候检查有效期,过期了就删除并返回null,这是国际通行做法

if($redis_data){
    return $redis_data;
}else{
    #sql select
    return $sql_data;
}

什么时候redis成了php的利器了,不是memecache吗?
你的问题是不知道如何写这段逻辑的代码吗?这个逻辑是需要通过代码去实现的,跟redis或者数据库都没有关系。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题