📚 Agrona 中文教程主页

从基础概念、核心组件到 Cookbook 实战,按顺序掌握 Agrona 这一高性能 Java 工具库。

👶 入门到进阶 ⚙️ Agent & 并发模型 🍳 Cookbook 实战示例

📖 核心章节

建议按顺序阅读,逐步建立对 Agrona 架构与运行模型的完整认知。

入门 · 第 1 章

📘Agrona 概述

了解 Agrona 的定位、核心特性以及与 Aeron 等组件的关系,理清整个技术栈。

内容:整体架构 · 核心设计理念 · 典型使用场景

进入章节
执行模型 · 第 2 章

🔄职责周期(Duty Cycles)

深入理解 Duty Cycle 概念,掌握如何在循环中控制每次执行的工作量与节奏。

内容:工作循环 · 批处理 · 性能权衡

进入章节
执行模型 · 第 3 章

⚙️Agent 与空闲策略

介绍 Agent 模型与多种 IdleStrategy,学会在高性能与 CPU 利用率之间取得平衡。

内容:Agent 接口 · IdleStrategy 对比 · 使用建议

进入章节
执行模型 · 第 4 章

🧵线程、Agent 与职责周期

把线程、AgentRunner 与 Duty Cycle 串联起来,构建完整的执行与调度模型。

内容:线程绑定 · AgentRunner · 实战组合方式

进入章节

🧩 核心组件与工具

围绕内存、并发与时间等高性能系统必备组件展开。

内存 · 第 5 章

💾Direct Buffer 与直接内存

学习 UnsafeBuffer 等直接内存缓冲区的使用方式,实现零拷贝与低 GC 压力。

内容:直接内存 · UnsafeBuffer · 内存管理实践

进入章节
并发 · 第 6 章

🔀并发集合与队列

介绍 Agrona 提供的无锁队列与并发集合,支撑高吞吐消息传递与数据交换。

内容:ManyToOne/OneToOne 队列 · 广播缓冲区

进入章节
集合 · 第 7 章

📊高性能数据结构

聚焦为性能而设计的 Map、Set 等数据结构,减少装箱与 GC 开销。

内容:Int2ObjectHashMap · 集合实现细节

进入章节
时间 · 第 8 章

⏱️时钟与时间源

在高性能系统中正确处理时间与时钟,对统计、超时与监控尤为关键。

内容:Clock 接口 · 不同时间源的权衡

进入章节
工具 · 第 9 章

🆔ID 生成器

讲解多种 ID 生成策略,帮助你在分布式系统中生成高性能且唯一的标识。

内容:序列号 · 时间戳 · 短 ID 等方案

进入章节
导航 · 附录

📑文档总览与学习说明

当前仓库中各文档的详细介绍、学习路径建议以及补充说明。

内容:完整目录 · 学习建议 · 相关资源

打开总览页

🍳 Cookbook 实战章节

通过完整示例把前面学到的概念与组件应用到实际项目中。

Cookbook · 总览

📚Cookbook 实战总览

汇总各类 Agrona 实战示例,为后续分章节实践提供导航与背景说明。

内容:示例目录 · 使用建议 · 性能思路

进入章节
Cookbook · 内存

📦预分配 Map 与集合

学习如何通过预分配和合理容量规划,降低 Map 使用过程中的扩容与 GC 成本。

内容:容量规划 · 案例代码

进入章节
Cookbook · 优化

🚧关闭 Unsafe 边界检查

在可控前提下关闭部分安全检查,以换取极致性能,并了解相关风险与防护。

内容:Unsafe 使用 · 风险提示

进入章节
Cookbook · 编解码

📡简单二进制编解码器

基于 Agrona 构建简洁高效的二进制协议,实现可靠且低延迟的消息编解码。

内容:缓冲区布局 · 读写 API · 示例协议

进入章节
Cookbook · Agent

🧩组合 Agent 设计

探索如何把多个 Agent 组合在一起,构建复杂但仍然可维护的高性能系统。

内容:CompositeAgent · 职责拆分 · 协调方式

进入章节
Cookbook · 生命周期

🛑优雅终止 Agent

讲解如何正确关闭 Agent 与相关资源,确保系统在退出时安全且可预测。

内容:生命周期管理 · 关闭流程

进入章节
Cookbook · 线程模型

🧵AgentRunner 与 ThreadFactory

综合运用 AgentRunner 与线程工厂,自定义线程命名、优先级与绑定策略。

内容:线程管理 · 监控与调试

进入章节