去中心化通信协议与平台研究
Codex 核验(2026-10-09):Matrix 2026-10-02 公告介绍了由 Dendrite 分出的 Zendrite v3.4.0;不能把早期 Dendrite 推荐当作当前唯一轻量实现。Conduit 使用嵌入式数据库,“不需独立数据库服务”不等于无数据库;50 MB 等内存估计未在本机重测。Matrix 联邦依赖可验证的服务器名、发现与 TLS,单有公网 IP 不自动兼容所有 homeserver。NATS WebSocket 是可选传输入口,TLS/auth 仍须显式配置,不是匿名公网聊天室。
替代 Discord/Telegram:去中心化、抗 DNS 污染、无单点故障、轻量化。
资源消耗全景
| 方案 | 语言 | RAM | 磁盘 | 人类可用 | 成熟度 |
|---|---|---|---|---|---|
| Conduit 🏆 | Rust | ~50MB | 嵌入DB | ✅ Element | ⭐ 可用 |
| Dendrite | Go | ~100MB | Postgres | ✅ Element | ⭐⭐⭐ 稳定 |
| Nostr relay | Go/Rust | ~50MB | ~几MB | ✅ Damus | ⭐⭐⭐⭐ 成熟 |
| NATS(已有) | Go | ~10MB | 可选 | ❌ 无UI | 🏆 已用 |
| MQTT/Mosquitto | C | ~5MB | 可选 | ⚠️ 需自建 | 🏆 成熟 |
| Matrix Synapse | Python | 1-2GB | 10-20GB | ✅ Element | 🏆 最成熟 |
| Berty | Go | ~200MB | 本地 | ✅ App | 🐣 早期 |
轻量级方案详解
🥇 Conduit — Rust Matrix(推荐)
| 指标 | 值 |
|---|---|
| ⭐ | 568 (GitLab 主仓库) |
| 语言 | Rust |
| RAM | ~50MB(比 Synapse 轻 20-40 倍) |
| 数据库 | RocksDB 嵌入式(不需要 Postgres) |
| 部署 | 单二进制,下载即运行 |
| 客户端 | 任何 Matrix 客户端(Element 等) |
| 兼容性 | 核心功能完整,beta 阶段 |
# 部署
wget https://conduit.rs/builds/linux/conduit
./conduit🥈 Dendrite — Go Matrix
| 指标 | 值 |
|---|---|
| ⭐ | 5,628 |
| 语言 | Go |
| RAM | ~100MB(比 Synapse 轻 10-20 倍) |
| 数据库 | Postgres(相比 Synapse 更高效) |
| 部署 | 单二进制 + Postgres |
| 客户端 | Element 等 |
🥉 现有方案增强:NATS + Web 桥接
| 方案 | RAM | 说明 |
|---|---|---|
| NATS(已用) | ~10MB | Agent 间消息总线 |
| + WebSocket | 无 | 浏览器直连 NATS |
| + 自建 Web UI | ~50MB | Vue/React 聊天界面 |
推荐方案
轻量级(< 200MB 总内存)
Conduit (Matrix, ~50MB)
→ Element 客户端(全平台)
→ 人类可用 ✅
→ 去中心化 ✅
→ 抗 DNS(可 IP 直连)✅
→ 轻量 ✅(50MB vs Synapse 1-2GB)
极简级(< 50MB 总内存)
Nostr relay + NATS + WebUI
→ NATS 做 Agent 总线(已有)
→ Nostr 做人类通信(自建 relay)
→ WebUI 桥接 NATS ↔ 浏览器
结论
Conduit(Rust Matrix)是目前最优解:
- 50MB RAM = Synapse 的 1/40
- 单二进制部署,不需要数据库
- 兼容 Element 客户端,人类体验同 Discord
- 去中心化、可自部署、可 IP 直连避 DNS
你现在 WSL 上跑 Conduit 毫无压力(4.6GB 空闲内存),甚至还能跟 Element 客户端在同一台机器上测试。要不要搭一个试试?