3个版本
0.1.10 | 2023年12月3日 |
---|---|
0.1.9 | 2023年12月3日 |
0.1.8 | 2023年12月3日 |
#13 in #webtransport
335KB
7K SLoC
WTransport
WebTransport协议,纯Rust,适合异步操作。
简介
WebTransport是一种正在开发中的新协议,旨在通过互联网实现客户端和服务器之间低延迟、双向通信。它旨在通过提供更高效和灵活的传输层来克服现有协议(如HTTP和WebSocket)的局限性。
WebTransport的好处
- 🚀 低延迟:WebTransport的设计目标是最小化延迟,非常适合游戏、视频流和协作编辑等实时应用。
- 🔄 双向通信:WebTransport允许客户端和服务器之间同时进行数据交换,无需多个请求即可实现高效的往返通信。
- 🔀 复用:使用WebTransport,可以在单个连接上复用多个流,从而减少开销并提高性能。
- 🔒 安全性:WebTransport受益于网络平台提供的安全功能,包括传输加密和同源策略。
注意
请注意,WebTransport仍处于草案阶段,尚未标准化。虽然WTransport库功能齐全,但并不完全适合生产环境。请谨慎使用,并且随着WebTransport规范的演变,它可能会发生变化。
简单的API
服务器 | 客户端 |
---|---|
|
|
入门
克隆仓库
git clone https://github.com/BiagioFesta/wtransport.git
cd wtransport/
运行Full
示例
examples/full.rs
是一个最小但完整的服务器示例,演示了WebTransport的使用。
您可以使用Rust的包管理器Cargo运行此示例,以下命令:
cargo run --example full
此示例启动一个可以接收消息的echo WebTransport服务器。它还包括一个集成的HTTP服务器,并使用自签名TLS证书建立连接所需的选项启动Google Chrome。
示例
其他语言
WTransport为以下语言提供了绑定
- Elixir: wtransport-elixir
依赖关系
~17–30MB
~573K SLoC