为什么选择 Otavia?
为高性能 Scala 构建,具有独特功能
零成本 Ask 模式
发送 ask 消息并获得回复就像调用方法。热路径无 Future 开销,无内存分配。
Type-Safe Messaging
Actor 之间的消息传递在编译时是类型安全,在运行前捕获错误。
Stack Coroutines
通过 Scala 3 元编程实现基于 CPS 的 async/await。顺序代码,异步性能。
No More Locks
单线程 Actor 意味着无竞态条件、无死锁、无线程安全烦恼。
IOC for Actors
ActorSystem 也是 IOC 容器,编译时类型安全地自动装配依赖的 Actor。
Netty IO Stack
从 Netty 移植,支持 AIO 和文件通道,利用丰富的 Netty 编解码器生态。
Object Pooling
热路径使用对象池实现零成本抽象。数百万 Actor,十亿条消息。
Zero Dependencies
核心模块只依赖 Scala 和 JDK,纯粹、可移植、可预测。
为什么选择 Otavia?
传统线程模型
- ✗复杂的线程管理
- ✗竞态条件和死锁
- ✗阻塞降低性能
- ✗难以理解
使用 Otavia
- ✓单线程 Actor 模型
- ✓无需锁
- ✓零成本异步
- ✓编译时类型安全