调整应用架构显著提升性能
本文通过对一个基于 Axum 和 Tokio 的 Rust 网络服务进行性能优化,展示了不修改算法和数据集内部结构,仅调整应用架构也能显著提升性能。初始版本服务基准测试表现不佳,经过线程隔离,减少框架多线程协调开销,在 Windows 上吞吐量提升 13%,延迟降低 59% ;发现 Tokio 在 Windows 下识别处理器数量有误,切换到 many_cpus crate 解决该问题,Windows 上吞吐量提升 119%,延迟降低 68%;考虑内存数据集的访问问题,使用 region_cached! 宏优化数据访问,却因 Windows 内存管理特性导致性能下降,通过线程绑定特定处理器解决,最终 Windows 吞吐量提升 89%,延迟降低 69%,Linux 吞吐量提升 48%,延迟降低 67%。还介绍了这些优化技术的适用性及通过 VTune profiler 分析性能瓶颈的方法。
版本 | Req/s (Win) | P95 ms (Win) | Req/s (Linux) | P95 ms (Linux) |
---|---|---|---|---|
初始版本 | 544 | 2450 | 1842 | 637 |
线程隔离 | 614 (+13%) | 1000 (-59%) | 1839 (-0%) | 305 (-52%) |
many_cpus | 1192 (+119%) | 792 (-68%) | 1864 (+1%) | 313 (-51%) |
region_cached | 784 (+44%) | 1680 (-31%) | 2700 (+47%) | 213 (-67%) |
线程绑定特定处理器 | 2251 (+89%) | 245 (-69%) | 2717 (+48%) | 213 (-67%) |
原文:https://sander.saares.eu/2025/03/31/structural-changes-for-48-throughput-in-a-rust-web-service/
问卷调查:为了 Rust 的未来
Rust 迎来十周年,官方计划撰写 Rust 愿景 RFC,目标是构建对现状的共识并明确未来方向,不涉及具体设计和特性推荐。其范围涵盖社区和技术多方面,通过调查和访谈收集数据,对象包括不同层次的 Rust 用户、非用户、企业等。目前计划在今年下半年发布愿景 RFC,4 月开展访谈,5 月准备初始报告。公众可通过填写调查、分享调查链接以及加入 Zulip 频道参与其中。
Rust 愿景 RFC 的目标不是提供具体设计或特性推荐,它侧重于构建对 Rust 现状的共识以及从宏观层面明确未来方向,后续会有专门的详细 RFC 来探讨具体设计和特性。本次调查问题是开放式和自由形式的,涵盖的主题与年度 Rust 调查有所不同。并且本次调查可收集潜在访谈人员名单,而年度 Rust 调查通常不具备此功能。公众可通过填写调查分享使用 Rust 的经历、推荐访谈对象;还能分享调查链接,让更多人参与进来;活跃于 Rust 维护者社区的人员可加入 Zulip 上的#vision-doc-2025
频道参与讨论。
问卷:https://www.surveyhero.com/c/fuznhxp3
原文:https://blog.rust-lang.org/2025/04/04/vision-doc-survey.html
Cores:一个跨平台的系统监控工具
Cores 是一个具备远程连接支持和现代用户界面(UI)的硬件监控后台服务项目,具有以下功能:
- 硬件监控:可监控 CPU、RAM、GPU 的使用情况,包括时钟速度、电压、内存使用和负载。
- 远程监控:支持使用任何带有网络浏览器的设备远程监控系统。
- 温度监控:监控 CPU、GPU 和驱动器的温度。
- 历史数据展示:可以查看历史图表。
- 存储设备监控:关注 SSD 的健康状况和使用情况。
- 风扇信息:获取风扇转速和 RPM 信息。
- 网络监控:提供网络速度和使用统计数据。
- 电池监控:监测电池健康状况、循环次数和容量。
Github 仓库:https://github.com/Levminer/cores
--
From 日报小组 Yuan YQ
社区学习交流平台订阅:
评论区
写评论还没有评论