zoukankan      html  css  js  c++  java
  • redis的持久化,缓存穿透,缓存击穿,缓存雪崩

    • redis的持久化,缓存穿透,缓存击穿,缓存雪崩
    """
    	redis的五种数据类型:string,list,hash(哈希),set(集合),zset(有序集合)
    	
    	redis的持久化机制:rdb,aof
    	redis持久化是指在指定的时间间隔内将内存中的数据进行快照,默认的是rdb快照,
            这种方式是将内存的数据以快照的方式写入到二进制文件中,默认的文件名是dump.rdb,
            redis有一个安全机制就是当服务不可控或者意外关机的时候会默认调用save完成数据持久化,
            当然你也可以主动调用save方法,来保存数据,这样的话更安全,可控。
    
    	rdb的优点:全量的数据快照,文件小,恢复速度快
    	rdb的缺点:当数据过大时,意外宕机时,可能会有部分数据没有来得及保存,从而丢失部分数据
    	
    	aof的优点:保存的数据全
    	aof的缺点:全量数据快照,文件大,恢复的速度慢
    	
    	
    	redis的缓存穿透,缓存雪崩,缓存击穿,解决方法
    	缓存穿透:缓存与数据库中都没有,恶意访问,频繁的查数据库,从而压力大
    	解决方法:查询一次,如果没有,缓存中增加空值,缓存有效时间设置断点
    		最常见的则是采用布隆过滤器,将所有可能存在的数据哈希到一个足够大的bitmap中,一个一定不存在的数据会被 这个bitmap拦截掉,从而避免了对底层存储系统的查询压力。
    	
    	
    	缓存雪崩:同一时间,大量键过期,同时访问数据库吗,压力大
    	解决方法: 将过期时间设置为随机
    	
    	缓存击穿:前台高并发访问一个已经在缓存中恰好过期的数据,全部打到后台数据库
    	解决方法:可以使用互斥锁,也可以将一些热点数据设置永不过期,可以里利用redis的setnx的功能,数据没有,返回一个设定值
    	
    """
    
  • 相关阅读:
    mycat分表扩展之全局序列(数据库方式)
    mycat分表扩展之按日期(天)分片
    mycat分表扩展之范围约定
    mycat分表扩展之分片枚举
    jdk导入证书链步骤说明
    oracle md5加密函数
    oracle常用(11g)
    oracle 11g 常规sql
    oracle归档日志
    oracle定时任务
  • 原文地址:https://www.cnblogs.com/yafeng666/p/12838988.html
Copyright © 2011-2022 走看看