上一页 1 2 3 4 5 6 7 8 ··· 13 下一页
摘要: 要彻底搞懂 Spring IoC 的底层原理,核心是抓住「IoC 容器的生命周期」和「Bean 的生命周期」两大主线——IoC 本质是 Spring 容器接管了对象的创建、依赖注入、销毁等全流程,底层靠「反射 + 设计模式」实现。 一、先明确核心概念 IoC(控制反转):把对象创建、依赖管理的权力从 阅读全文
posted @ 2026-03-11 09:57 七星6609 阅读(121) 评论(0) 推荐(0)
摘要: 要搞懂 Spring、Spring Boot、Spring Cloud 的原理,核心是先理清它们各自的定位和解决的问题,再从「核心设计思想」和「底层实现逻辑」两个维度拆解。三者是递进关系:Spring 是基础框架,Spring Boot 简化 Spring 开发,Spring Cloud 基于前两者 阅读全文
posted @ 2026-03-11 09:20 七星6609 阅读(45) 评论(0) 推荐(0)
摘要: 两个核心问题——“高并发下多个事务是否生成undo log多版本链”“undo log是否加锁后才生成”,是理解InnoDB事务一致性和并发控制的关键。本文结合高并发场景,从版本链本质、生成时机、锁与undo log的关联逻辑三个维度,给出精准且落地的解析。 一、核心结论先明确 版本链数量:同一行数 阅读全文
posted @ 2026-03-09 16:55 七星6609 阅读(29) 评论(0) 推荐(0)
摘要: 在MySQL InnoDB高并发写同一行数据的场景中,undo log版本链是保证事务原子性、实现MVCC的核心。当版本链中某条事务回滚时,InnoDB并非简单“删除”该事务的版本记录,而是通过回滚指针(roll_pointer) 逆向遍历版本链,将数据恢复到该事务执行前的“基准版本”;同时,回滚操 阅读全文
posted @ 2026-03-09 16:18 七星6609 阅读(68) 评论(0) 推荐(0)
摘要: 两阶段提交(2PC)是MySQL保证redo log(InnoDB层) 和binlog(Server层) 一致性的核心机制,其执行流程严格分为「Prepare阶段」和「Commit阶段」,每个阶段都有明确的核心动作、数据状态变化和异常处理逻辑。本文会结合InnoDB底层逻辑,拆解2PC从触发到完成的 阅读全文
posted @ 2026-03-09 15:53 七星6609 阅读(163) 评论(0) 推荐(0)
摘要: 关于事务持久性和一致性,接下来我会从为什么需要2PC、2PC完整执行流程、崩溃恢复的具体判断逻辑三个维度,把这个知识点讲透,让你不仅知其然,更知其所以然。 一、为什么必须引入两阶段提交? 首先要明确:redo log(InnoDB层)和binlog(MySQL Server层)是两个独立的日志体系, 阅读全文
posted @ 2026-03-09 15:07 七星6609 阅读(94) 评论(0) 推荐(0)
摘要: InnoDB的更新事务是数据库中最核心、最复杂的操作之一,其执行过程不仅要保证数据修改的正确性,还要通过锁机制、日志体系、MVCC 等核心组件,兼顾并发性能与数据一致性(ACID)。本文将从SQL执行的底层视角,拆解一次UPDATE事务从发起到最终落地磁盘的完整流程,结合InnoDB的核心机制讲清每 阅读全文
posted @ 2026-03-09 14:39 七星6609 阅读(59) 评论(0) 推荐(0)
摘要: 在InnoDB中,“锁是加在索引上”是核心结论,但很多人只知其然不知其所以然——当多个事务通过不同索引操作同一行数据时,是否会产生锁冲突?答案是:大概率会产生冲突(尤其是写操作),但具体取决于索引类型、操作类型和锁机制。本文从索引结构、锁的绑定逻辑、冲突场景三个维度,拆解底层原理和实际影响。 一、核 阅读全文
posted @ 2026-03-09 14:17 七星6609 阅读(72) 评论(0) 推荐(0)
摘要: 在MySQL中,InnoDB引擎是唯一支持事务的存储引擎,事务也是保证数据一致性、解决并发数据访问问题的核心,更是MySQL技术面试的高频考点。本文将从InnoDB事务执行过程、事务隔离级别、事务并发异常三个核心维度,讲清原理、关联逻辑和面试常考点,内容偏实战和底层,适配技术面考察要求。 一、Inn 阅读全文
posted @ 2026-03-09 13:50 七星6609 阅读(92) 评论(0) 推荐(0)
摘要: 架构思维落地:拆、缓、防三板斧让系统扛住高并发流量 在高并发场景成为系统研发常态的当下,从秒杀大促到日常高频业务请求,如何让系统稳定承接流量、避免服务雪崩,成为每一位研发和架构师必须攻克的难题。很多人谈及高并发优化,只会零散提及Redis缓存、MQ解耦等技术,却缺乏体系化的架构思考。 其实高并发架构 阅读全文
posted @ 2026-03-09 12:35 七星6609 阅读(88) 评论(0) 推荐(0)
摘要: 要理解 Java 反射中 Class.forName() 和 ClassLoader 的区别,我们可以从核心作用、加载机制、初始化行为三个维度拆解,先通过通俗的定义建立认知,再结合代码示例和实际场景说明。 一、核心区别:加载 + 初始化 vs 仅加载 1. 先明确基础概念 类加载过程:JVM 加载类 阅读全文
posted @ 2026-03-09 11:44 七星6609 阅读(43) 评论(0) 推荐(0)
摘要: 缓存的击穿、穿透、雪崩是后端开发中高频出现、极易引发服务雪崩的核心问题,三者看似相似但原理和解决方案完全不同。本文用「原理+场景+落地方案+代码」的形式,一次性讲透,看完就能直接落地到生产环境。 先分清:三大问题核心区别(一张表看懂) 问题类型 核心定义 典型场景 直接后果 缓存穿透 请求根本不存在 阅读全文
posted @ 2026-03-08 16:51 七星6609 阅读(144) 评论(0) 推荐(0)
摘要: 这是后端面试必考、工程必踩的核心问题:更新数据库时,怎么保证缓存里的数据是对的? 我给你讲得原理通透、方案落地、能直接写进架构文档。 一、先搞懂:为什么会不一致? 本质只有一句话: 缓存和数据库是两个独立存储,无法原子更新。 只要是「先操作A,再操作B」两步动作,就一定可能出现: 第一步成功 第二步 阅读全文
posted @ 2026-03-08 16:25 七星6609 阅读(98) 评论(0) 推荐(0)
摘要: 一、最根本原因:完全基于内存操作 这是 Redis 快的第一决定性因素。 所有读写操作都在内存中完成 内存随机访问延迟:~100ns 普通磁盘随机 I/O:~10ms 差距:10万倍左右 简单说: Redis 快,首先是因为它不碰磁盘(除了持久化)。 二、第二关键:极致高效的内存数据结构 Redis 阅读全文
posted @ 2026-03-08 10:58 七星6609 阅读(69) 评论(0) 推荐(0)
摘要: BlockingQueue(阻塞队列)是 Java 并发编程的核心组件,它既是「队列」(存储元素),又具备「阻塞」特性:当队列空时,取元素的线程会阻塞;当队列满时,存元素的线程会阻塞。这种特性让它成为线程池、生产者-消费者模型的核心底层依赖,本文会从「核心原理、核心实现类、底层机制、使用场景」四个维 阅读全文
posted @ 2026-03-07 22:30 七星6609 阅读(90) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 8 ··· 13 下一页