Actor 并发模型
每个 Actor 独享执行上下文,业务消息串行处理,隔离共享状态与锁竞争。
Go Actor Game Server Framework
ActorGo 是面向实时游戏的 Go Actor 服务端框架。用清晰的消息边界组织状态,让单机开发简单,也让集群扩展自然。
METHOD TABLE1001 → Player.Login
LOCAL进程内直接调用
CLUSTER按节点平滑扩展
01 / ARCHITECTURE
外部请求不再携带 Actor Target,也不依赖函数名反射。顶层方法按稳定 Method ID 路由,内部子 Actor 才使用完整 ActorPath——边界更简单,也更安全。
02 / CORE CAPABILITIES
从接入层到 Actor 运行时,再到集群与组件生态,ActorGo 提供一套边界清晰、可以渐进扩展的工程基础。
每个 Actor 独享执行上下文,业务消息串行处理,隔离共享状态与锁竞争。
Typed Handler 在初始化阶段完成签名校验,AGP、HTTP 与集群入口共用方法表。
TCP 使用长度帧,WebSocket 一条 Binary Message 对应一个 Packet,客户端只提交方法与 Body。
默认 NATS,也可切换 RabbitMQ;Invoke / Notify 业务 API 与底层消息中间件解耦。
内置双 Body Codec,可按调用选择编码;集群控制面固定 Protobuf,行为清晰可预测。
业务 Handler、事件与定时器 panic 均有保护,单个 Actor 异常不会拖垮整个进程。
房间、玩家与战局独立 Actor,天然串行化状态更新。
顶层服务与动态子 Actor 组合,按节点分布并水平扩容。
事件、定时器与分层时间轮统一编排在线状态。
Gin、GORM、Mongo、Redis 等组件按需接入。
OPEN SOURCE · MIT LICENSE