- 博客(128)
- 资源 (1)
- 收藏
- 关注
原创 Semaphore原理与落地实战
关键词:许可证(permits)、限流/并发控制、AQS 共享锁、公平/非公平、tryAcquire 超时、泄漏防护。
2026-01-11 13:45:00
1197
原创 Phaser原理与落地实战
关键词:多阶段同步、动态注册/注销、arrive/awaitAdvance、父子 Phaser、AQS、替代 CyclicBarrier、批处理/对账/并行编排。
2026-01-11 04:34:05
950
原创 CyclicBarrier原理与落地实战
关键词:可复用屏障、ReentrantLock + Condition、最后到达者、barrierAction、超时与 broken、阶段同步。
2026-01-10 13:45:00
1720
原创 Java 常见加密算法全解
加密相关随机数必须用:3.1.2 AAD 是啥?为什么好用AAD(Additional Authenticated Data)= “不加密但要防篡改的头信息”。比如你把 当 AAD,攻击者就没法替换密文去骗系统。CBC 本身不提供完整性,只保证机密性。你必须:推荐:不推荐:(历史兼容场景才考虑)注意:RSA 不能加密任意长数据RSA 适合:签名用途:证明“确实是某私钥持有者签的” + 防篡改。推荐:6. 哈希(Hash)与 HMAC6.1 SHA-256(摘要)6.2 HMAC-SH
2026-01-09 11:59:09
921
原创 ArrayList 底层原理
基于动态数组(Object[])实现的可变长线性表。优点:随机访问快(O(1)),遍历快,内存连续、CPU cache 友好。缺点:中间插入/删除慢(O(n)),扩容有成本,线程不安全。比 2 倍更省内存;比固定增量更少扩容次数1.5 倍是时间与空间的折中解除引用,帮助 GC 回收对象,避免内存泄漏。
2026-01-08 18:13:39
870
原创 ConcurrentHashMap(JDK 7/8)详细介绍
目标:让你在面试里把 ConcurrentHashMap 讲“透”,包括:数据结构、并发控制、扩容、put/get 流程、JDK7 vs JDK8 差异、常见坑与高频追问。
2026-01-08 15:46:16
940
原创 HashMap 面试全攻略
HashMap 本质是空间换时间JDK 1.8 的核心升级是:红黑树尾插法高效 resize面试重点永远在:put / getresize并发问题HashMap 的精髓不是 API,而是在冲突、扩容、并发之间做工程权衡。
2026-01-07 17:51:32
710
原创 MyBatis 如何实现“面向接口”查询
下面把这条链路拆开讲清楚。在 MyBatis 里,“面向接口”通常就是:例子:调用方:这玩意之所以能跑,是因为 其实是 动态代理对象。一次 ,大致经历:一句话:接口只是“门面”,真正干活的是动态代理 + MappedStatement + Executor。MyBatis 需要先知道:哪些接口是 Mapper。3.2 Spring Boot: 自动扫描注册(最常见)Spring 会扫描包,把接口交给 MyBatis 注册进 。 最终走到:返回的不是实现类,而是 JDK Proxy:MyBatis
2026-01-06 15:17:36
473
原创 MyBatis 分页插件实现原理(Interceptor 机制 + SQL 改写)
目标:把SELECT ...变成两件事1)可选的COUNT(*)统计总数2)真正的分页查询:MySQL 用(其他数据库用各自方言)这篇讲,以及分页插件通常拦截哪一层、怎么改 SQL、怎么处理参数、缓存、以及坑。
2026-01-06 11:52:30
1021
原创 千万级大表快速删除大量数据(MySQL)实战方案
最快:分区表删得多:新表重建 + 原子改名线上稳:分批 delete(走索引 + 限速 + 小事务)要省磁盘:重建表/新表 swap/分区 drop 才是真回收。
2026-01-05 11:48:55
1122
原创 XXL-JOB详细使用指南 + 多节点“重复消费”问题解决方案
目标:把 XXL-JOB 在 Java/Spring Boot 项目里用起来;以及。
2026-01-04 14:31:22
777
原创 ShardingSphere使用详解
先选好分片键:它决定你 80% 的性能上限。业务查询必须尽量带分片键:否则广播扫描就是慢。大分页别用 offset:用游标/时间/主键。JOIN 要么绑定表,要么别做。扩容要提前设计:不然重分片迁移会非常痛。强一致事务别上头:多数场景最终一致更稳。
2026-01-03 09:15:00
1470
原创 分布式ID原理与使用详解
分布式 ID 的目标是全局唯一、高性能、趋势递增。UUID 简单但无序;数据库号段通过区间分配最稳定;Snowflake 性能高但要处理时钟回拨;Redis INCR 简单但存在回退风险。
2026-01-02 14:15:00
700
原创 synchronized原理与使用详解
这份文档把讲到“你能讲清楚底层 + 能写对代码”的程度:对象头、Monitor、锁升级、wait/notify、可见性、以及工程里的坑。
2026-01-01 14:15:00
570
原创 常用限流算法详解
适用场景:API 网关 / Spring Boot 服务 / MQ 消费者 / 定时任务触发 / 防刷防爆破目标:在的前提下,给用户稳定、可预期的服务质量(SLA)。
2026-01-01 10:45:00
2100
原创 CompletableFuture 异步编程实战文档(含真实工作场景)
只处理异常,返回替代值成功/失败都处理,想统一收口就用它只做副作用(日志/埋点),不改结果CompletableFuture 本质是异步任务 + 可组合的编排 DSL业务最常用三件套:并行聚合(thenCombine / allOf)有依赖链(thenCompose)超时降级(completeOnTimeout + exceptionally)线程池治理决定你是“提速”还是“自杀”。把整体 RT 从“求和”变成“取最大”。
2025-12-31 17:32:28
1151
原创 Elasticsearch 聚合(Aggregations)详解
聚合不是 group by,是分布式分桶统计。bucket 要少,filter 要前,高基数别硬刚,真报表别指望 ES。
2025-12-30 15:30:00
1532
原创 Elasticsearch Query DSL 中 must / filter / should 详解
❌ 全部条件都放 must(性能差)❌ term 查询放 must(浪费 score)❌ 以为 should 一定要匹配(不是)❌ 忘了 minimum_should_matchmust 决定“相关性”,filter 决定“对不对”,should 决定“谁更好”。能 filter 就 filter,少算 score,ES 才跑得快。
2025-12-30 11:10:37
1165
原创 Elasticsearch 数据建模详解:nested vs parent-child
"attrs": {PUT order❌ 忘了 nested,导致条件串味❌ nested 当关系型 join 用❌ parent-child 没 routing,数据直接乱❌ parent-child 当 OLTP 用(更新风暴)nested 是“文档内一致性”,parent-child 是“文档间独立生命周期”。能用 nested 别上 join,能不用 ES 就别硬用。
2025-12-29 18:23:17
1224
原创 Elasticsearch 实际工作中的分页方案详解
前端分页用 search_after,导出用 scroll,from + size 只准用在浅分页。
2025-12-29 09:55:57
1115
原创 Spring Boot 项目使用 Elasticsearch 详细指南
目标:让你在 Spring Boot 里把 ES(Elasticsearch)用到“能跑、好用、可维护、可上线”的程度。内容包含:选型、依赖与配置、索引与 mapping、CRUD、复杂查询、聚合、分页/排序/高亮、批量、同步 MySQL、性能与坑、生产实践。
2025-12-27 16:39:13
1105
原创 Redis大Key与热点Key问题解决方案
String:value > 1MB(或更小就明显影响延迟)Hash/Set/ZSet/List:元素数量 > 1w(视业务与元素大小)单次 HGETALL/SMEMBERS/ZRANGE 结果太大(网络与序列化成本爆炸)热点 key = 单个 key 的访问 QPS 极高(例如全站配置、爆款商品、秒杀库存)。大 key:拆分 + 分页读 + UNLINK 删除热点 key:本地缓存 + 读扩散 + 逻辑过期预防 > 救火:上线前限制 key 形态和大小。
2025-12-27 10:41:19
1398
原创 一致性哈希与Redis哈希槽详解
一致性哈希把哈希空间映射成一个闭合的环节点通过hash(node)映射到环上key 通过hash(key)映射到环上Redis Cluster 定义了16384 个哈希槽一致性哈希解决“少迁移”,Redis 哈希槽解决“可控迁移 + 易运维”。
2025-12-26 14:27:13
931
原创 Redis 持久化策略(RDB / AOF / 混合持久化)详解(含选型与线上实践)
目标:把 Redis 持久化到底怎么选、怎么配、线上怎么排坑讲透。
2025-12-26 09:24:06
844
原创 Redis高可用实现详解
目标:把 Redis 怎么做到“挂一台不影响服务”、以及你线上到底该怎么选讲清楚。适用:Redis 5/6/7(命令差异不影响核心原理)。你会得到:架构原理 + 配置模板 + 运维要点 + 常见坑。
2025-12-25 14:47:26
844
原创 Redisson分布式锁原理详解
Redisson 锁是很好用的“并发闸门”,但它不是强一致事务。关键业务仍要靠:幂等 + DB 约束 + 状态机,锁只是减少冲突。
2025-12-25 09:30:59
1142
原创 全网最全Redis底层实现数据结构详解
小对象/小集合:Redis 会用紧凑编码(embstr/listpack/intset)把内存压到极致规模上来:Redis 会切换到保证复杂度与可用性真正线上事故往往不是“某结构慢”,而是你对“大结构做了全量操作”。
2025-12-23 14:15:00
446
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅