按分类浏览

热门文章

最新发布

61
ES 的查询过程分析

本文从整体架构出发,逐层深入讲解 ES 的查询执行过程:从客户端请求到协调节点分发,到数据节点的 Lucene 查询,再到结果合并返回。同时结合源码分析关键路径,并给出生产环境的最佳实践。

2026-05-26 👁 105 次阅读
62
Go 的 GC:并发三色标记与混合写屏障

Go 的 GC 设计体现了一种鲜明的工程哲学:用并发三色标记换取极低停顿,不用分代,混合写屏障保证并发正确性。本文梳理 Go GC 的演进历史、核心机制,以及与 JVM GC 的设计差异。

2026-05-25 👁 105 次阅读
63
CMS 收集器:Java 第一个并发收集器的设计与缺陷

CMS(Concurrent Mark-Sweep)是 Java 第一个真正意义上的并发收集器,它把大部分标记工作放到与应用线程并发执行,大幅缩短了停顿时间。本文分析 CMS 的四个阶段、两大缺陷,以及为何最终被 G1 取代。

2026-05-25 👁 105 次阅读
64
TCP 拥塞控制(CUBIC 与 BBR)

TCP 拥塞控制解决发送方如何感知网络容量、在不造成拥塞的前提下最大化吞吐的问题,CUBIC 是 Linux 默认算法,BBR 是 Google 2016 年提出的基于带宽探测的新一代算法。

2026-06-04 👁 104 次阅读
65
LZ4 与 Snappy 与 Zstd

LZ4/Snappy/Zstd 均是 LZ77 变体,LZ4 以极速解压(>4 GB/s)著称,Zstd 提供高压缩率(3-4x)兼顾速度,Snappy 是 Google 内部的稳定平衡选项;Kafka、RocksDB、ClickHouse、Parquet 均内置支持。

2026-06-04 👁 104 次阅读
66
多标签 Pareto Dijkstra

多标签 Pareto Dijkstra 为每个节点维护一组「非支配标签」(Pareto 前沿),同时优化多个目标(如时间和费用),输出所有满足"没有其他方案在所有维度都更优"的解集,是携程可拼票、OTA 多目标排序的算法基础。

2026-06-08 👁 103 次阅读
67
Rendezvous Hashing

Rendezvous Hashing(HRW)通过对每个候选节点计算 hash(key, node_id) 并选最高分实现分布式路由,无需虚拟节点即可天然均匀分布,被 Varnish Cache、Cassandra 和 CDN 边缘调度广泛采用。

2026-06-04 👁 103 次阅读
68
WAL(Write-Ahead Log)

WAL(Write-Ahead Log)通过"先写日志再改数据"保证崩溃后数据可恢复,是 InnoDB、PostgreSQL、etcd、RocksDB 等几乎所有持久化存储系统的核心机制。

2026-06-04 👁 103 次阅读
69
分代假说与分代收集:朝生夕死的工程哲学

分代收集是现代主流 GC 的核心设计哲学,建立在一个关键经验观察上:大多数对象"朝生夕死"。本文梳理分代假说的理论基础、分代堆的结构设计,以及 Minor GC 和 Major GC 的触发机制。

2026-05-25 👁 103 次阅读
70
内存模型

本文从硬件层的 CPU 内存模型出发,逐层深入到 Java 内存模型(JMM),系统讲解内存可见性、重排序、happens-before、volatile、synchronized 的底层原理,以及各层次之间的关联。是理解 Java 并发编程|Java 并发编程 的必备基础。

2026-06-05 👁 102 次阅读

第 7 / 20 页 · 共 195 篇