- 博客(7)
- 收藏
- 关注
原创 深入理解 Java 反射机制:从 Class 到 Method 的底层原理解析
本文系统解析了Java反射机制,从四个维度展开:Class对象、反射API、底层实现与性能代价。反射是程序运行时动态获取类信息并操作类结构的能力,为框架连接业务代码提供了关键支持。文章详细介绍了Class对象的本质与获取方式,以及反射在构造器、字段和方法三大结构上的应用。深入剖析了反射底层原理并非解释执行,而是通过元数据查找和动态字节码生成实现。性能方面指出反射在单次调用时较慢,但通过缓存和框架优化可大幅改善。最后展示了反射在Spring IOC、ORM框架和RPC中的实际应用场景,体现了其作为Java生态
2025-12-29 22:58:56
626
原创 go中的map和sync.map有什么不同?从底层数据结构带你解析
本文深入分析了Go语言中map与sync.Map的底层实现差异。map采用哈希表设计,追求单线程性能,但非并发安全;而sync.Map采用读写分离策略,通过read-only map实现无锁读取,dirty map处理写入,适合读多写少场景。sync.Map通过晋升机制批量更新read map,但结构复杂、写性能较低且内存占用高。文章对比了两者的设计目标、数据结构和使用场景,指出它们不能互相替代,并揭示了不同语言在并发数据结构设计上的相通之处。
2025-12-29 22:53:21
894
原创 一条UPDATE在MySQL中是如何完成的?
MySQL的UPDATE语句执行流程分为四个关键阶段:1)SQL解析与优化;2)InnoDB引擎操作(缓冲池查找、加锁、生成Undo Log);3)两阶段提交(Redo Log prepare+Binlog组提交优化);4)异步刷脏页。其中组提交机制将多个事务的I/O合并,使性能提升近百倍。两阶段提交确保Redo Log和Binlog的一致性,支持crash-safe特性。WAL机制通过顺序写Redo Log替代随机写脏页,兼顾性能与数据持久性。整个流程实现了事务的ACID特性,同时通过缓冲池、日志合并等优
2025-12-27 13:06:52
1020
原创 什么是bloom过滤器?带你从源码角度理解
布隆过滤器(Bloom Filter)是 1970 年提出的概率型集合成员查询数据结构,用 m 位二进制数组 + k 个独立哈希函数实现常数时间插入与查询,特点是空间极省、速度极快,但允许可控的假阳性(误判不在的元素为在),绝不假阴性(已在的元素不会被判为不在),且难以删除元素。这样说似乎有些太过官方了,让我们以实际场景为导向来先了解一下他是做什么的吧。
2025-12-25 16:09:53
707
原创 golang:从零开始手写godis,深层理解redis底层
本文从零开始实现简化版Redis(godis),重点分析其核心机制,该项目帮助深入理解Redis底层原理,代码已实现基本事件框架,后续可扩展数据结构和命令处理。
2025-06-18 21:52:32
1009
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅