目录背景物理日志和逻辑日志日志模块:redo log 
  redo log产生背景redo log基本概念redo log记录形式redo log使用场景日志模块:bin log 
  bin log基本概念bin log刷盘机制bin log使用场景日志模块:undo log 
  undo log基本概念undo log使用场景binlog/redo log/undo log区别闲聊背景日志            
                
         
            
            
            
            热点数据更新对于有限的数据库资源,如果有大量请求去消费的话,肯定会产生大量的锁竞争(数据库对一条数据的更新会导致在索引上给这条记录加行锁,如果没有索引,会导致锁表),消耗服务器资源,而且请求的成功率也不高(换句话说就是你在浪费服务器资源,性价比不高)。例如:在大促某件商品时,库存只有 1000,用户请求数 100 w,如果都让这个 10 w 用户请求去访问数据库,会带来大量的锁竞争,最终抢到商品的            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-10 21:49:42
                            
                                78阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            对于大部分的应用来说,都存在热点数据的访问,即:某些数据在一定时间内的访问频率要远远高于其它数据。 常见的热点数据有“最新的新闻”、“最热门的新闻”、“下载量最大”的电影等。 为了了解MySQL Innodb对热点数据的支持情况,我进行了基准测试,测试环境如下:【硬件配置】硬件配置CPUIntel(R)Xeon(R)CPUE5620主频2.40GHz,物理CPU2个,逻辑CPU16个内存24G(6            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-08-26 00:02:32
                            
                                39阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1. 大型电商系统高流量系统设计   场景:			    大量电商系统每天要处理上亿请求,其中大量请求来自商品访问、下单。商品的详情是时刻变化,由于请求量过大,不会频繁去服务端获取商品信息,导致服务器压力极大。需要用到多级缓存、异步处理、负载均衡等方式来实现		  解决:			    评估哪些页面是活跃的,即用户查看使用较多的页面。页面里面包括静态资源和数据、动态数据等,划分层次,把静态资源存放到            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-12 22:23:14
                            
                                19阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            故障描述:某张业务数据表中使用了blob类型字段,该字段会被频繁的更新,导致MySQL产生大量的bin log,最终将服务器硬盘写满,导致该机器上其它的业务受到影响详细原因:导致这个问题的业务是一个基数统计程序,基于storm开发。算法上采用了HyperLogLog,为了能够统计每小时的活跃用户数量,每小时对应一条HyperLogLog结构。每当数据到达后会更新对应时间段的HLL结构(为了使用Mi            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-12-15 05:43:32
                            
                                61阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            数据高可用之所以是老生常谈的话题,是因它对企业数据安全起到了至关重要的保障作用,数据高可用核心功能在于如何保证在发生故障时数据不丢失。本文作者热璞数据库HotDB首席架构师,精通数据库原理和MySQL开源数据库,将以使用者视角,抽丝剥茧式的手把手教你如何基于MySQL进行数据高可用。强烈建议大家收藏此篇文章!以下:如何基于MySQL进行数据高可用这次探讨的话题是数据高可用,首先,我们需要理清楚数据            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-27 22:44:55
                            
                                79阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            最近系统多次因对数据库锁使用不当引起问题,故从基础学习一下mysql锁机制。基本概念:共享锁共享锁的代号是S,是Share的缩写,共享多的锁粒度是行或者元组(多个行),一个事务获取了共享多之后,可以对锁定范围内的数据执行读操作。排它锁排它锁的代号是X,是eXclusive的缩写,排他锁的粒度是行或元组,与共享锁相同,一个事务获取了排它锁之后,可以对锁定范围内的数据执行写操作。例:假设有两个事务t1            
                
         
            
            
            
            原创 编程悟道 编程悟道 2024-01-20 10:33 发表于江苏 MySQL性能调优实战:热点数据优化性能调优,就像是给你的爱车做维护,让它跑得更快更稳。而优化热点数据,就像是在赛车比赛中,为最频繁使用的加速踏板涂上最好的润滑油,保证每次踩下去都能有最快的响应速度。在这个笑料百出的世界里,性能调优是开发者的终极追求,热点数据优化就是其中的排头            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-19 21:06:45
                            
                                101阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            热点数据发现1.发现静态热点数据:静态热点数据的发现相对简单些,是可以提前预估预测的数据。比如:秒杀活动商品、降价促销商品、节假日的火车票机票、热门电影门票、明星发布新专辑,以及大数据分析流行趋势预测热点。2.发现动态热点数据:创建异步监控统计服务和热点数据服务。异步监控统计服务在一个周期内对Key进行请求统计,在达到请求量级后将热点Key发送到热点数据服务收集,然后热点数据服务对这些热点Key进            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-03 16:02:25
                            
                                61阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Redis 是什么Redis 的五种基本类型STRINGLISTSETHASHZSET键的过期时间发布与订阅事务持久化快照持久化AOF 持久化复制从服务器连接主服务器的过程主从链处理故障分片事件事件类型事件的调度与执行Redis 与 Memcached 的区别Redis 适用场景数据淘汰策略一个简单的论坛系统分析文章信息点赞功能对文章进行排序参考资料Redis 是什么、特点非关系型(NoSQL)内            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-21 10:10:44
                            
                                378阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一 背景     某个业务线 商品开放开用户申请免费试用,当某个商品特别吸引人时,比如iPhone6 。肯定有一大波人为了少卖一个肾 疯狂去抢申请 一个update完成,释放行锁后才能处理下一个请求。大量后来请求等待            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-04-28 00:28:48
                            
                                199阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在做项目时 使用redis 对热点数据做缓存 虽然有提供的注解 但是这里我们自己实现以下 并解决其中的缓存击穿 穿透 雪崩问题 以提高接口的RT 减少数据库的压力  使用aop 加注解加缓存。首先自定义一个注解 然后使用aop   首先我们使用around 注解 对我们自定义的注解进行环绕通知 因为我们使用的环绕通知可以 使用ProcessdingJoinP            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-10 16:53:03
                            
                                94阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            我是?廖志伟?,一名?Java开发工程师?、?Java领域优质创作者?、?CSDN博客专家?、?幕后大佬社区创始人?。拥有多年一线研发经验,研究过各种常见框架及中间件的底层源码,对于大型分布式、微服务、三高架构(高性能、高并发、高可用)有过实践架构经验。?博主:java_wxid ?博主:Java廖志伟 ?社区:幕后大佬文章目录互斥锁(mutex)永远不过期本文内容:热点数据缓存当前key是一个热            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-21 20:09:40
                            
                                235阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            binlog是MySQL Server层记录的日志,  redo log是InnoDB存储引擎层的日志。 两者都是记录了某些操作的日志(不是所有)自然有些重复(但两者记录的格式不同)。 2. 选择binlog日志作为replication我想主要原因是MySQL的特点就是支持多存储引擎,为了兼容绝大部分引擎来支持复制这个特性,那么自然要采用MySQL Server自己记录的日志而不是仅仅针            
                
         
            
            
            
            背景众所周知,redis是纯内存的操作。所以速度极快。然而内存的大小是有限的。如:mysql中有2000w的数据,redis中只存20w的数据,那么如何保证redis中的数据都是热点数据呢?答案:redis内存数据集达到一定大小的时候,就会实行数据淘汰策略,内存的淘汰机制的初衷是为了更好地使用内存写在淘汰策略之前:reids 过期策略我们在设置一个key的时候,一般会给这个key设置一个过期时间(            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-23 18:01:18
                            
                                141阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            EXPLAIN 语句中type列的值type连接类型system 表只有一行
const 表最多只有一行匹配,通用用于主键或者唯一索引比较时
eq_ref 每次与之前的表合并行都只在该表读取一行,这是除了system,const之外最好的一种,
特点是使用=,而且索引的所有部分都参与join且索引是主键或非空唯一键的索引
ref 如果每次只匹配少数行,那就是比较好的一种,使用=或<=>            
                
         
            
            
            
            高并发的情况会给系统带来很高的访问流量,这就给存储这些热点信息的Redis数据造成了一些压力。热key问题及解决方案 产生原因 用户消费的数据远大于生产的数据 (热卖商品、热点新闻、热点评论、明星直播)等。在日常工作生活中一些突发的的事件,例如某明星突然宣布恋情,导致某新闻点击量瞬间变大,请求远超过对数据的写入。就会造成热数据问题。我们 一般采用缓存 + 过期时间的策略来帮助我们加速接口的访问速度            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-19 10:01:22
                            
                                31阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            热点数据(经常会被查询,但是不经常被修改或者删除的数据),首选是使用redis缓存,毕竟强大到冒泡的QPS和极强的稳定性不是所有类似工具都有的,而且相比于memcached还提供了丰富的数据类型可以使用,另外,内存中的数据也提供了AOF和RDB等持久化机制可以选择,要冷、热的还是忽冷忽热的都可选。结合具体应用需要注意一下:很多人用spring的AOP来构建redis缓存的自动生产和清除,过程可能如            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-16 19:55:29
                            
                                156阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            大家好,我是Tom哥。Redis 作为一门主流技术,应用场景非常多,很多大中小厂面试都列为重点考察内容前几天有星球小伙伴学习时,遇到下面几个问题,来咨询 Tom哥考虑到这些问题比较高频,工作中经常会遇到,这里写篇文章系统讲解下问题描述:向你提问:tom哥,在复习redis时,有些疑问,麻烦看看: 1.如果redis集群出现数据倾斜,数据分配不均,该如何解决?2.处理hotKey时,为ke            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-09 21:35:16
                            
                                595阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            首先理解缓存的概念,缓存通常用于什么场景呢,比如说你正在刷微博,这时候突然出现一个热点事件,比如某"多人运动事件",由于是焦点话题,一传十,十传百,查看该话题的人会越来越多,如果将该条热点消息放在数据中,每次查看该消息都需要和数据库进行一次交互,而使用微博的人群庞大,数据库承担的压力就会非常大,这也就是微博经常在出现热点消息时就崩的原因。因此当出现热点新闻的时候,及时将该消息放入缓存中存储,后面的            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-12-15 10:55:51
                            
                                305阅读
                            
                                                                             
                 
                
                                
                    