- 博客(191)
- 收藏
- 关注
原创 mysql缓冲池
MySQL 的**缓冲池(Buffer Pool)**是 InnoDB 存储引擎最核心的内存结构,也是 MySQL 性能优化的重中之重。简单来说,它是内存与磁盘之间的一块高速缓存区域。如果没有它,MySQL 的每一次读写都需要直接操作磁盘,性能会极其低下。为了让你彻底理解这个“性能加速器”,我将从核心作用、内部结构、管理算法、以及调优实战四个维度为你详解。计算机硬件中,内存(RAM)的读写速度是纳秒级的,而磁盘(即使是 SSD)是毫秒或微秒级的,两者速度相差几个数量级。缓冲池的核心价值就是**“以内存换磁盘
2026-03-06 14:58:56
157
原创 Btree与B+tree
B树和B+树都是为了解决海量数据高效检索而生的多路平衡查找树。B树:数据分散存储,单点查询可能很快,但范围查询和磁盘I/O效率是其短板。
2026-03-06 14:55:47
181
原创 CountDownLatch控制线程顺序
要使用“谁想执行,谁就await;谁执行完了,谁就countDown。如果你想让线程 2等线程 1,就在线程 2里写,在线程 1结束时写。注意latch的初始值要等于你需要等待的线程数量。
2026-03-06 14:52:52
167
原创 CountDownLatch如何控制线程
(倒计时门闩)是 Java 并发编程中非常实用的一个同步辅助工具。你可以把它想象成一个或者。简单来说,就是“主线程(或某个线程)暂停,直到其他 N 个线程都忙完了,它再继续”。
2026-03-06 14:47:11
214
原创 3DES加密
具体来说,第 1 轮使用加密时的第 16 个子密钥,第 2 轮使用第 15 个子密钥,依此类推,直到第 16 轮使用第 1 个子密钥。在解密过程中,S 盒和 P 盒的使用方式与加密过程相同。密钥结构:生成或解析24字节密钥(K1、K2、K3),支持168位(三密钥)或112位(双密钥,K1=K3)模式。3 末置换(FP置换):在最后一个轮次完成后,将经过加密的数据块进行置换和重新排列,得到加密后的64位密文。1、初始置换(IP置换):将输入的64位明文块进行置换和重新排列,生成新的64位数据块。
2025-08-07 10:57:00
1177
原创 Java应用服务器UPJAS
HA机制:集成自动故障探测与秒级切换能力,满足金融系统“5个9”可用性要求,与银联多活架构(两地三中心)深度协同。数据库联动:通过UPSQL Proxy实现数据库读写分离和故障自动切换,与自研数据库UPSQL深度集成。容器模式:封装为Docker镜像,通过Kubernetes调度管理,支持弹性扩缩容和CI/CD流水线。模块化架构:采用分层设计(如连接管理、事务控制、安全模块),支持按需加载组件,减少资源占用。与银联技术生态集成。容器化适配方案。
2025-08-07 10:56:27
472
原创 mysql数据库底层逻辑
Mysql在内存中构建缓冲池,当查询需要访问数据时,MySQL 首先检查缓冲池,若数据不在缓冲池:1.从磁盘读取目标页(16KB单位)2.将页加载到缓冲池的空闲页(Free List)3.将页添加到LRU List的Old Sublist头部(LRU分为两个区域:New Sublist(5/8):最近频繁访问的"热"数据,Old Sublist(3/8):新加载或较少访问的数据)(当缓冲池空间不足时,New Sublist,Old Sublist会从尾部开始淘汰最久未被访问的页)
2025-07-23 08:27:15
221
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅