我已经在一个名为Rivet 的项目上工作了几年,最近才开源:
链接到 GitHub:https://github.com/rivet-gg/rivet
我们在构建 Rivet 时尝试了很多有趣的工具,但其中大部分都没有保留下来。我想我会分享一些你们可能会感兴趣的笔记:
ws-tool是一个高性能的websocket库,提供同步和异步IO接口。
这是0.9.0版本的更新
benchmark
300 bytes payload size, 100000000 messages
cargo lt -- -p 300 --count 100000 -t 1 <url>
| server | count | Duration(ms) | Message/sec |
|---|---|---|---|
| uWebSocket | 100000000 | 16798 | 5953089.65 |
| tungstenite | 100000000 | 19905 | 5023863.35 |
| bench_server(无缓冲区) | 100000000 | 42395 | 2358768.72 |
| bench_server(8k) | 100000000 | 16541 | 6045583.70 |
| bench_async_server(无缓冲区) | 100000000 | 45774 | 2184646.31 |
| bench_async_server(8k) | 100000000 | 16360 | 6112469.44 |
1M bytes payload size, 100000 messages
cargo lt -- -p 1048576 --count 100 -t 1 <url>
| server | count | Duration(ms) | Message/sec |
|---|---|---|---|
| WebSocket | 100000 | 34900 | 2865.33 |
| tungstenite | 100000 | 38745 | 2580.98 |
| bench_server(无缓冲区) | 100000 | 29854 | 3349.63 |
| bench_server(8k) | 100000 | 28887 | 3461.76 |
| bench_async_server(无缓冲区) | 100000 | 29280 | 3415.30 |
| bench_async_server(8k) | 100000 | 29384 | 3403.21 |
适用于 Rust 的 XRPL SDK 是一个社区驱动的项目,提供用于连接 XRP Ledger 的易于使用的工具。它包括 HTTP 和 WebSocket 客户端、基础包和命令行工具。
https://github.com/gmosx/xrpl-sdk-rust
From 日报小组 时光
社区学习交流平台订阅:
原文作者:Rust语言中文社区;如有侵权,请联系管理员删除。