cosmic — 分布式矩阵账号控制系统

所属团队
个人开源
我的角色
作者 / 独立开发
周期
持续演进
工具与技术
GolangC++ProtobuflibhvRakNetSQLite
背景
要在复杂网络环境下稳定控制成百上千个 bot 账号,单进程方案撑不住:连接管理、协议转换、弱网重连、状态同步全挤在一起。cosmic 的答案是三端分离——admin、server、sentry(C++)。


我解决了什么
- 事件驱动控制面:Hub 事件循环管理连接生命周期,注册/注销/广播经带缓冲 channel 异步处理,每连接独立 goroutine,零锁竞争
- 长连接协议:Go 控制面与 C++ sentry 之间用长度前缀 Protobuf 统一命令、状态与事件;sentry 重连后由中心下发快照重建运行态
- 重连风暴防御:LVS L4LP 保持节点粘性,"假离线"状态 + 多级缓存防止大面积重连打穿数据库
- 写路径削峰:Redis Stream 异步批量处理推送与回执,最新 Seq 暂存 + 定时刷盘,数据库写 IO 降低 80%
- 索引结构:ID 索引、UUID 哈希索引、前缀字典树模糊匹配,读操作 O(1);空间哈希把三维空间邻居查找从 O(n) 降到 O(1)
- 传输层二开:改造 RakNet,把 Socks5 代理嵌入 TransmissionLayer,实现串行建连、非阻塞握手与自动重连
结果
系统在真实弱网环境里长期稳定运行,支撑大规模 bot 矩阵的分层管辖。这个项目是我并发编程、网络协议与 C++/Go 混合工程能力的来源——GitHub 上 70+ star 是最好的同行评审。
项目开源在 github.com/81Vm3/cosmic,欢迎读源码、拍砖。



