• 2024-10-31Redis学习:BigKey、缓存双写一致性更新策略和案例
    Redis学习:BigKey、缓存双写一致性更新策略和案例文章目录Redis学习:BigKey、缓存双写一致性更新策略和案例1.BigKey2.缓存双写一致性更新策略3.缓存双写一致性案例1.BigKey面试题MoreKey不可以使用keys*,要使用SCAN基于游标来查询所有的key通过在redis.con
  • 2024-09-26【数据库】生产问题(数据迁移)
    MySQL亿级数据平滑迁移实战(来自vivo)https://www.cnblogs.com/vivotech/p/18373623 1、方案选型常见的迁移方案大致可以分为以下几类:而预约业务有以下特点:读写场景多,频率高,在用户预约/取消预约/福利发放等场景均涉及到大量的读写。不可接受停机,停机不可避免的会造成经济
  • 2024-09-12openGauss和PostgreSQL差异对比
    检查点在PostgreSQL中的检查点叫全量检查点,执行时会将buffer中的所有的脏页刷到磁盘,需要在一定时间内完成刷脏页的操作,导致数据库运行性能波动较大。同时全量检查点开始时需要遍寻内存中的所有脏页,内存越大,寻找脏页的时间也越长,具体过程如下:遍历所有BUFFER,将当前时刻的所有脏块状态
  • 2024-08-23MySQL 亿级数据平滑迁移实战
    本文介绍了一次MySQL数据迁移的流程,通过方案选型、业务改造、双写迁移最终实现了亿级数据的迁移。一、背景预约业务是vivo游戏中心的重要业务之一。由于历史原因,预约业务数据表与其他业务数据表存储在同一个数据库中。当其他业务出现慢SQL等异常情况时,可能会直接影响
  • 2024-08-22MySQL 亿级数据平滑迁移实战
    作者:来自vivo互联网服务器团队-LiGang本文介绍了一次MySQL数据迁移的流程,通过方案选型、业务改造、双写迁移最终实现了亿级数据的迁移。一、背景预约业务是vivo游戏中心的重要业务之一。由于历史原因,预约业务数据表与其他业务数据表存储在同一个数据库中。当其他业务
  • 2024-08-20深入分析与解决方案:缓存与数据库双写不一致问题
    我们上次探讨了Redis的常见问题,本章将深入分析更细致的细节,例如如何从业务角度有效处理缓存与数据库之间的双写不一致问题。接下来,让我们深入研究这个话题。key重建优化开发人员通常使用“缓存+过期时间”的策略,以便既能加速数据读写,又能确保数据的定期更新。这种模式基本上能
  • 2024-07-18[Redis]双写一致性
    经典缓存模式旁路缓存读数据首先读缓存,如果缓存中有这个数据,直接返回如果缓存中没有这个数据,去读数据库,如果数据库中有这个数据,先把这个数据更新到缓存,再返回数据如果数据库也没有这个数据,返回无数据写数据先更新数据库,再删除缓存读写穿透缓存这个模式在用户
  • 2024-07-08redis如何与mysql数据保持一致?
    redis如何与mysql数据保持一致?同步双写:cacheasidepattern,读:先读缓存再读数据库,一个缓存的过期时间,实现起来简单好用极限情况还会有数据不一致的风险。CAP定理:c一致性a可用性p分区容错性,cp或者是ap异步双写:基于消息队列实现,写:生产者:先更新数据库,向队列发消息,消费者:监听消
  • 2024-06-04MySQL 关键特性一:插入缓冲、双写缓冲
    前言​本文主要介绍mysql的几大特性之几,如:双写缓冲和插入缓存。双写缓冲基本概念​双写缓冲(doublewritebuffer)是MySQL/InnoDB中用于支持原子页面更新的一种机制。在传统的数据库系统中,为了保证数据的一致性和可恢复性,通常需要进行冗余写入操作。这种冗余写入通过在
  • 2024-05-28【秒杀系统】秒杀系统实战(四):缓存与数据库双写一致性深度分析
    【秒杀系统】秒杀系统实战(四):缓存与数据库双写一致性深度分析前言微笑挖坑,努力填坑。————已经拥有黑眼圈,但还没学会小猪老师时间管理学的蛮三刀同学本文是秒杀系统的第四篇,我们来讨论秒杀系统中缓存热点数据的问题,进一步延伸到数据库和缓存的双写一致性问题,并且给
  • 2024-05-21字节面试:百亿级存储,怎么设计?只是分库分表?
    文章很长,且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录博客园版为您奉上珍贵的学习资源:免费赠送:《尼恩Java面试宝典》持续更新+史上最全+面试必备2000页+面试必备+大厂必备+涨薪必备免费赠送:《尼恩技术圣经+高并发系列PDF》,帮你实现技术自由,完成职业升级,薪
  • 2024-05-11hmall | 引入ES实现高效搜索与同步双写
    在gitee、飞书、百度云、B站中,黑马都没有上传该部分资料,以下皆为个人观点,如有纰漏欢迎指正 1.先把item-service中的searchcontroller抽出来,抽到一个模块中并将其设为hmall的子模块2.引入依赖common,nacos,bootstrap,es<!--web--><dependency><gr
  • 2024-03-28怎样去保证 Redis 缓存与数据库双写一致性?
    解决方案那么我们这里列出来所有策略,并且讨论他们优劣性。先更新数据库,后更新缓存先更新数据库,后删除缓存先更新缓存,后更新数据库先删除缓存,后更新数据库先更新数据库,后更新缓存    这种方法是不推荐使用的,因为在更新缓存那一步有的业务需求缓存中的值并不是从数据
  • 2024-01-10缓存数据库双写不一致
    缓存数据库双写不一致Redis缓存与数据库Mysql双写不一致如何解决?方案2应该是最好的,也是最复杂的。其他都有很明显的问题。对于频繁更新的数据不建议加缓存异步更新缓存(基于订阅binlog的同步机制):binlog增量订阅消费+消息队列+增量数据更新到redis读Redis:热数
  • 2023-12-24缓存双写一致性之更新策略探讨
    缓存双写一致性之更新策略探讨面试题上面业务逻辑你用java代码如何写?你只要用缓存,就可能涉及到Redis缓存与数据库双存储双写,只要是双写就一定会有数据一致性的问题,那么如何解决?双写一致性,你先动缓存Redis还是数据库MySQL?Why?延时双删你做过吗?会有哪些问题?有这么一种情况,微服
  • 2023-12-23Redis7 数据双写一致性
    1、缓存双写一致性如果redis中有数据,需要和数据库中的值相同如果redis中无数据,数据库中的值要是最新值,且准备回写redis缓存细分1、只读缓存2、读写缓存2.1、同步直写策略写数据库后也同步写redis缓存,缓存和数据库中的数据一致对于读写缓存来说,要想保证缓存和数据库中的数据
  • 2023-11-28虾皮一面:如何保证数据双写一致?
    年关将至,又到了准备面试跳槽的季节了。据不完全统计,跳槽是涨薪最快的方式,没有之一。而跳槽成功与否的关键是“面试”,所以认真准备面试=快速涨薪。准备面试,自然就少不了刷面试真题了,而今天这份刚出炉的虾皮Java后端面试题就非常典型,它的难度适中,面试结构分为:半小时八股+半
  • 2023-11-15MySql与Redis双写方案
    一、简介    有两种同步方案:通过MySQL自动同步刷新Redis,MySQL触发器+UDF函数实现。解析MySQL的binlog实现,将数据库中的数据同步到Redis 。二、方案一:UDF    2.1、场景分析        当我们对MySQL数据库进行数据操作时,同时将相应的数据同步到
  • 2023-11-13工作中知识点总结
        在DBA工作中遇到的问题千奇百怪,可能有些问题是比较常见的,我们一下子就能知道其中的问题关键点所在,但是有些问题的出现并不一定我们可以很快的了解到其中的根本问题,所以需要总结工作中需要用到的知识点,经常查一查看一看。MYSQL知识点MYSQL的WAL机制(日志先行),主要涉及
  • 2023-11-07记一次经典SQL双写绕过题目[极客大挑战 2019]BabySQL 1
    题目环境:<br/>作者已经描述进行了严格的过滤做好心理准备进行迎接判断注入类型admin1'字符型注入<br/><br/>万能密码注入admin1'or'1'='1报错<br/>已经是字符型注入了,所以的话只有or这里存在了过滤联想到buuctf里面还没有碰到双写绕过的题目所以这里斗胆
  • 2023-10-13深入解析MySQL双写缓冲区
    本文已收录至GitHub,推荐阅读
  • 2023-10-12如何保证缓存与数据库双写时的数据一致性
    1、背景在做系统优化时,想到了将数据进行分级存储的思路。因为在系统中会存在一些数据,有些数据的实时性要求不高,比如一些配置信息。基本上配置了很久才会变一次。而有一些数据实时性要求非常高,比如订单和流水的数据。所以这里根据数据要求实时性不同将数据分为三级。第1级:订单数据和
  • 2023-10-11探索Redis与MySQL的双写问题
    本文已收录至GitHub,推荐阅读
  • 2023-10-11探索Redis与MySQL的双写问题
    本文已收录至GitHub,推荐阅读
  • 2023-10-09缓存-双写一致性