美文网首页
redis(二)

redis(二)

作者: go_2021 | 来源:发表于2022-02-15 19:13 被阅读0次
    雪崩

    Redis 高可用,主从+哨兵,Redis cluster,避免全盘崩溃。
    再加一层本地缓存。
    限流:
    dubbo限流 https://blog.csdn.net/u012965203/article/details/98253914 executes直接限制
    cloud限流 Hystrix

    热点key过期
    • 统一管理(多热点key,需要额外功能区标记热点数据)
      热点统一刷新,常驻内存。(微信token)
    • 单个控制
      • 100个并发过期了- 执行-> 加锁,2次检查redis,不存在的话,读库,存redis。(第一个查库,剩下的99个one by oneredis
      • key,一个key1啥也不存 (5分钟过期),一个key2data(10分钟过期)。
        100个并发key1没了- 执行-> 获取毫秒锁 -> 成功 ->
        2次检查redis, 存上key1,读库,刷新key2data
    key可以不存在
    • 校验参数
    • 存空值
    • 加一层布隆
      • 增加系统复杂度
      • 误判情况
      • 不能删除
    布隆

    整多轮(一般8次)hash计算 一轮存入一个bitmap里
    8轮下来发现 没有存储数据 就存上 如果存上了就说明 可以已经插入过了 直接过滤掉
    这算法会有误判的情况发生
    如果要0误判 可以在被过滤之后 插入hashSet中 之后再来一轮补录。

    事务

    是个命令打包运行的机制,保证按照顺序执行,但是不支持回滚(一般也不会有错误)。watch可以监听一个值,如果改变就取消执行。
    机器故障重启,aop中的事务不完整会被删除。

    缓存一致性方案

      1. 更新redis 更新mysql redis脏数据
      2. 更新mysql 更新redis 多次执行
        a更新mysql 更新redis
        b更新mysql 更新redis
        b更新mysql 更新redis
        性能消耗比较大,其实如果没有读操作的话,redis更新比较多余,用删除代替更新减少性能开销
      3. 删除redis 更新mysql
      4. 更新mysql 删除redis

    相关文章

      网友评论

          本文标题:redis(二)

          本文链接:https://www.haomeiwen.com/subject/usbukrtx.html