前言 如果你开发了一个 Web 网站,前期业务逻辑比较简单,就是查数据库然后呈现到页面上,但是随着业务的发展,用户数量和 qps 越来越多,这时候你会发现网站访问越来越慢,于是你定位到是数据库负载太高......
分类:数据库
一文搞懂缓存穿透、雪崩和击穿
前言 我们使用缓存主要是为了提高查询效率,将一些数据库慢查询或频繁的查询结果缓存起来,下次就可以不用查数据库,直接从缓存取。由于缓存使用内存存储,加上一些高效的数据结构,所以存取速度比数据库快几个等级......
MySQL 事务的 ACID 特性:底层机制与实现逻辑
下面使用的 MySQL 版本为 8.0 ACID 事务支持 MySQL 中的 ACID 是数据库事务(Transaction)的四大核心特性,它们共同保证了数据库操作的可靠性和一致......
MySQL InnoDB 索引详解
前言 索引可以显著提高查询性能,但也会增加写操作的开销(如插入、更新和删除),选择合适的索引类型和列非常重要,以平衡查询性能和存储开销,定期分析和优化索引,以确保数据库性能的持续优化。 索引类型 索引......
MySQL 事务隔离级别
在MySQL的众多存储引擎中,只有InnoDB支持事务,所有这里说的事务隔离级别指的是InnoDB下的事务隔离级别。 四种隔离级别 隔离级别 脏读 不可重复读 幻读 读未提交 READ-UNCOMMI......
限流的原理解析以及实现方式
限流是指在系统中对请求或操作的流量进行控制,以防止系统过载或资源耗尽。其主要目的是保证系统的稳定性和可靠性。 原理解析 限流的基本原理是对一定时间窗口内的请求数量进行限制,从而避免系统在高并发场景下被......
kafka 为什么这么快
Apache Kafka 是一个高性能的分布式流处理平台,设计用于处理大规模实时数据流。Kafka 的高性能和低延迟可以归因于其设计和实现中的一些关键技术和优化策略。以下是这些因素的详细解释: 1. ......
Redis 为什么这么快
前言 Redis 是一个开源的内存数据结构存储,广泛用于缓存、消息队列和实时数据处理等场景。Redis 之所以能够实现高性能和低延迟,主要归功于其设计和实现中的一些关键技术和优化策略。 Redis以性......
深入理解 MySQL 中的 NULL 和数字精确计算
以下内容基于 MySQL InnoDB 存储引擎 什么是 NULL 值? 在 MySQL 中,NULL 是一个特殊的标记,用来表示缺失或未知的值。它与空字符串 '' 或数......
修改线上大表结构
场景 在线数据库的维护中,总会涉及到研发修改表结构的情况,修改一些小表影响很小,而修改大表时,往往影响业务的正常运转,如表数据量超过500W,1000W,甚至过亿时 影响: 工具说明 pt-onlin......