zoukankan      html  css  js  c++  java
  • Redis 相关

    高并发
    多机的时候,虽然有失效时间,但还是会有短时间内缓存和数据库数据不一致(读操作不需要特殊操作),
    更新操作的时候
    先删除缓存,再更新数据库
    先更新数据库,再删除缓存
    原子性破坏,增加队列重试

    先删除缓存,再更新数据库
    在高并发下表现不如意,在原子性被破坏时表现优异
    先更新数据库,再删除缓存(Cache Aside Pattern设计模式)
    在高并发下表现优异,在原子性被破坏时表现不如意


    雪崩
    大量key同时失效,或者缓存层崩了
    1.多机负载,哨兵监控,限流降级,同一个线程对同一个key
    2. 给每个key的过期时间加随机数,尽量设置把过期时间设置的均匀一些
    3.缓存持久化,宕机之后重启并快速从磁盘恢复

    穿透
    不断地访问数据库不存在的值,空值因为不存缓存,就会一直访问数据库。
    1.数据库返回为空,也放入缓存,并设置短过期时间,下次再访问就返回空。
    2.布隆过滤器,不合法的提前拦截

    持久化
    RDB和AOF的优缺点

    RDB优点:全量数据快照,文件小,恢复快

    RDB缺点:无法保存最近一次快照之后的数据,数据量大会由于I/O严重影响性能

    AOF优点:可读性搞,适合保存增量数据,数据不一丢失

    AOF缺点:文件体积大,恢复时间长

  • 相关阅读:
    java实验报告三
    学术论文撰写准备事项整理
    mac终端下运行shell脚本
    关于1*1卷积核的理解
    车牌识别项目的准备思路
    快捷键备忘
    跑caffe过程中的备忘
    caffe中全卷积层和全连接层训练参数如何确定
    从零开始足球战术分析
    卷积与反卷积以及步长stride
  • 原文地址:https://www.cnblogs.com/jayblog/p/13219710.html
Copyright © 2011-2022 走看看