美文网首页
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