2 releases
Uses new Rust 2024
| 0.1.1 | Nov 9, 2025 |
|---|---|
| 0.1.0 | Oct 30, 2025 |
#2081 in Network programming
300KB
5K
SLoC
Actor-RTC Framework Demo
基于 WebRTC 和 Actor 模型的分布式实时通信框架演示程序。
📖 概述
这个项目展示了一个创新的分布式系统架构,将经典的 Actor 模型与现代 WebRTC 技术相结合。通过"宏观 Actor"的设计理念,每个进程作为一个独立的 Actor,通过 WebRTC 进行点对点通信,同时内置了双路径处理模型来优化不同类型数据的传输。
🎯 核心特性
- 宏观 Actor 模型: 进程级别的 Actor 抽象,简化分布式系统设计
- WebRTC 原生支持: 内置 NAT 穿透和点对点直连能力
- 双路径处理:
- 状态路径: 可靠有序的控制消息处理
- 快车道: 低延迟的流式数据处理
- 类型安全: 基于 Protobuf 的契约驱动开发
- ACL 感知: 访问控制列表支持的安全发现机制
📚 文档中心
我们提供了一套完整的设计与开发文档,帮助您深入理解和使用本框架。推荐按以下顺序阅读:
第一部分:核心概念与架构 (Concepts & Architecture)
这部分是所有开发者的必读内容,用于建立对框架的宏观理解。
第二部分:开发者指南与实践 (Guides & Practices)
这部分是动手实践的内容,指导开发者如何使用框架进行开发。
- 开发者指南 (快速入门教程)
- 项目清单与命令行工具 (CLI 参考手册)
- Actor 食谱 (进阶开发模式)
- 测试 Actor
- 媒体源与轨道 (特定应用场景)
第三部分:实现内幕 (How It Works)
这部分是为希望深入理解框架、或为其贡献代码的开发者准备的。
附录
🚀 快速开始
前置要求
- Rust: 1.70+ (安装指南)
- Node.js: 16+ (下载地址)
- protoc: Protocol Buffer 编译器
# Ubuntu/Debian sudo apt install protobuf-compiler # macOS brew install protobuf
一键演示
# 1. 设置项目(安装依赖、构建)
./run_demo.sh setup
# 2. 运行完整演示
./run_demo.sh demo
📁 项目结构
actor-rtc/
├── docs/ # 框架设计文档
├── proto/ # Protobuf 协议定义
├── actor-rtc-framework/ # 🔥 框架核心 crate
├── signaling-server/ # Node.js 信令服务器
├── examples/ # 🎯 示例程序(使用框架)
└── run_demo.sh # 自动化脚本
🤝 贡献指南
我们欢迎各种形式的贡献!
- Fork 本项目
- 创建特性分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 开启 Pull Request
📄 许可证
本项目采用 MIT 许可证。
Dependencies
~16–44MB
~620K SLoC