- 博客(6)
- 收藏
- 关注
原创 厨房风云中的CompletableFuture
本文通过"午饭风云"的生活化场景,生动讲解了Java 8中CompletableFuture的多线程任务编排功能。文章首先拆解了做饭任务的各个步骤,包括买菜、预处理和烹饪等环节,对应到多线程编程中的任务分解。然后详细介绍了CompletableFuture的五类方法:任务创建、串行编排、并行聚合、异常处理和结果获取,并给出了对应的生活场景示例。最后通过代码实现展示了如何使用两个线程池("小张/小王"和"电饭锅")来执行不同任务,包括异常处理、任务取
2025-12-19 16:31:27
716
原创 聊聊面试中的高频考题-单例模式
特定场景下需要把某些类设计成只有一个实例的那种,无论在哪里使用,用到的都是同一个实例,且不能手动创建实例。在设计上会把创建实例的入口(构造方法)隐藏,只允许通过指定方法来获取实例。
2025-12-11 14:01:06
655
原创 面试中的毒瘤——排序算法(0基础忽略)
假设任一父节点下标为i其左子节点下标为2i+1其右子节点下标为2i+2满足非叶子节点的条件:至少有左子节点即 i <= (length - 2) / 2所以最大满足条件的i = floor((length - 2) / 2)
2025-12-05 14:52:29
888
原创 希望这将是你看的最后一篇关于JVM垃圾回收的文章(纯干货)
本文详细探讨了Java垃圾回收机制的发展历程与核心技术。从基础概念入手,阐述了垃圾回收的必要性及判断标准,重点分析了引用计数法和可达性分析算法。文章系统介绍了主流垃圾回收器的演进:SerialGC(串行)、ParallelGC(并行)、CMS(并发标记清除)、G1(垃圾优先)到ZGC和Shenandoah,剖析了各代回收器的设计思想、实现原理及适用场景。特别深入讲解了三色标记法、写屏障技术、分代回收等核心机制,对比了不同回收器在吞吐量、延迟、内存占用等关键指标的表现。最后指出垃圾回收器的发展趋势是减少STW
2025-11-28 10:11:30
1129
原创 关于海豚调度的依赖满足判定的一次细究
文章摘要:分析了海豚调度系统中F_ODS_MDM流程的依赖解析问题。当补数实例和定时实例同时存在时,由于MySQL的排序特性(相同结束时间按主键升序返回),系统会错误地选择旧的失败实例作为依赖解析依据,导致下游流程失败。通过源码分析发现,系统在依赖解析时会优先选择结束时间最新的实例,但在相同结束时间情况下,MySQL默认返回主键较小的旧实例。建议优化流程设计,避免多个实例同时运行,或调整依赖解析逻辑。
2025-07-23 10:25:24
1668
原创 当seatunnel CDC同步遇到了主键分布不均
摘要:使用SeaTunnel从MySQL同步数据到StarRocks时,遇到一个表长时间读取量为0的问题。经排查发现,该表无自增主键且数据分布不均匀,导致SeaTunnel在快照同步阶段采用采样分片策略,需要全表扫描6000万数据。通过源码分析发现,采样过程采用游标遍历所有ID,效率极低。最终通过调整参数(将均匀分布因子范围调至4000)和指定分片键,使作业判定为均匀分布,避免了采样过程,成功启动同步。该案例揭示了无主键大表同步的性能瓶颈及调优方法。
2025-06-27 14:23:30
1380
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅