| Language | Go 1.24, GC runtime | Rust Zero-cost abstractions, compile-time memory safety |
| Memory Management | GC collection, STW pauses | Ownership System Deterministic destruction, zero GC |
| Concurrency Safety | Runtime -race detection, data races may reach production | Compile-time Guarantee Send/Sync traits eliminate data races |
| RingBuffer | RWMutex sync, lock contention under high concurrency | Lock-free Atomic operations, zero contention |
| Frame Sharing | Go pointer passing, heavy GC tracking pressure | Arc<AVFrame> Reference-counted zero-copy, no GC involvement |
| Protocol Support | 8 protocols: RTMP / RTSP / HLS / FLV / WebRTC / SRT / GB28181 / WebTransport | 8 protocols Equal coverage, native Rust implementation |
| GB28181 | Full implementation: device access + cascading + voice intercom | Full Implementation Rust rewrite, equal capabilities |
| Cluster Solution | QUIC cascading, Secret authentication | QUIC Cluster 0-RTT connection, auto load balancing |
| Plugin Loading | Static compilation only | Three Modes Static + Dynamic loading + WASM sandbox isolation |
| Plugin SDK | Same repo as engine, InstallPlugin tight coupling | Independent SDK Trait contract layer, decoupled from engine kernel |
| Config Persistence | 6-layer priority, plugin configs file-only | 8-layer Priority Plugin configs persistable to DB, API changes survive restarts |
| Admin Panel | Embedded admin.zip, basic management UI | New Admin Visual stream monitoring + config management + real-time dashboard |
| Monitoring & Ops | No built-in monitoring, relies on external tools | Full-stack Built-in Three-tier reporting + bitrate/framerate dashboards + ops overview + risk detection |
| Web Player | Community Web player approach | Official Web player New player, performance and protocol upgrades |
| Web SDK | No official Web SDK | Official Web SDK Frontend streaming integration in a few lines of code |
| Deployment | Single binary (Go build, ~17MB) | Single Binary Rust build <20MB, equally zero-dependency |