gm-quic: 原生异步 Rust 的 QUIC 协议实现
QUIC 协议是下一代互联网重要的基础设施,而 gm-quic
则是一个原生异步 Rust 的 QUIC 协议实现,一个高效的、可扩展的 RFC 9000 实现,同时工程质量优良。 gm-quic 不仅实现了标准 QUIC 协议,还额外实现了 RFC 9221 (Unreliable Datagram Extension)、qlog (QUIC event logging) 等扩展,另外还有纯碎基于 quic 进行密钥交换的 ssh样例。
众所周知,QUIC 拥有许多优良特性,以及极致的安全性,十分适合在高性能传输、数据隐私安全、物联网领域推广使用:
高性能数据传输:
- 0-RTT 握手,最小化建连时延
- 流的多路复用,消除了头端阻塞,提升吞吐率
- 多路径传输,提升传输能力
- BBR 等高效的传输控制算法,保证低时延、高带宽利用率
数据隐私安全:
- 默认集成 TLS 1.3 端到端加密
- 实现前向安全密钥和经过身份验证的数据包头,以抵御篡改。
IoT 和边缘计算:
- 支持连接迁移,以便在网络变化(例如从 Wi-Fi 切换到蜂窝网络)时保持会话。
- 实现轻量级通信,支持不可靠数据报(RFC 9221),适用于实时物联网场景。
Github 仓库:https://github.com/genmeta/gm-quic
ferrishot: 跨平台截屏工具
ferrisshot 是使用 Rust 和 Iced 开发的跨平台截屏工具。目前还在积极开发中。
- 选区截屏
- 调整选区大小
- 移动选区
Github 仓库:https://github.com/nik-rev/ferrishot
使用 Rust 两年心得分享
作者用 Rust 编写 B2B SaaS 产品后端两年后,分享使用体验。Rust 优势明显,性能出色,默认运行速度快,优化空间大;工具链友好,Cargo 使用体验佳;类型安全,代码健壮性高;错误处理灵活高效;借检查器保障内存安全与并发;异步编程表现良好;重构方便,类型错误让操作更安全;能筛选出高质量人才。也存在不足,模块系统复杂,创建 crate 慢且易出现循环依赖,跨 crate 导入不便;构建性能差,受多种因素影响;难以实现组件依赖替换,测试复杂;强大功能易导致代码难懂。
原文:https://borretti.me/article/two-years-of-rust
--
From 日报小组 Yuan YQ
社区学习交流平台订阅:
评论区
写评论还没有评论