< 返回版块

苦瓜小仔 发表于 2025-11-27 11:47

Tags:日报

This Week in Rust

https://this-week-in-rust.org/blog/2025/11/26/this-week-in-rust-627/

EuroRust 演讲:Ergot 库中的不安全结构

深入探索 ergot 消息传递库中那些不安全的内部结构。从侵入式的链​​表、手动实现的虚函数表,到类型,James 将讲解如何让这个库即使在最小的设备上也能正常运行。

Ergot 是一个消息传递库,可以在各种不同尺寸的设备上运行,从大型台式机/服务器 PC 到非常小的单核微控制器,让开发者享受一个连贯的设备网络,无论设备的大小或用于连接它们的传输介质如何。 它包含类型安全的套接字 、 寻址和路由 。在最小的 MCU 尺寸配置中,它不需要内存分配器,并且与 no_std 兼容。在较大的 PC 尺寸配置中,为了性能和便利性,可以使用内存分配器。

观看:https://www.youtube.com/watch?v=33l3gNPBpzc

文章《用 Rayon 并行处理图算法》

这是一篇关于在 Rust 链接器 Wild 中利用 Rayon 并行处理图算法的介绍:

  1. 核心挑战:处理工作量未知的图遍历(如可达性分析),任务需动态发现且涉及共享状态修改,无法直接使用简单的并行迭代。
  2. 方案对比
    • Scoped Spawning(作用域生成):利用 scopespawn 动态派发任务。优点是代码逻辑清晰、组合性极佳;缺点是闭包会导致少量的堆分配开销。
    • Channel + par_bridge:尝试用通道传递任务以减少内存分配。结果发现极难通过借用检查(Borrow Checker),且存在死锁风险,代码结构变得僵化且不可维护。
  3. 最终决策:作者决定回退到 Scoped Spawning。结论是:为了微小的性能提升而牺牲代码的可组合性和安全性是不值得的。

阅读:https://davidlattimore.github.io/posts/2025/11/27/graph-algorithms-in-rayon.html

讨论:https://www.reddit.com/r/rust/comments/1p7omoh/thoughts_on_graph_algorithms_in_rayon/

walrus:分布式消息流平台,比 Kafka 快

Walrus 是一个用 Rust 开发的分布式消息流平台,旨在超越 Kafka。

  1. 极致性能:单节点写入达 120 万次/秒,利用 io_uring 优化,基准测试击败 Kafka 和 RocksDB。
  2. 架构创新数据与元数据分离,Raft 仅管理元数据,数据写入不经共识算法以消除瓶颈。
  3. 智能运维:支持自动分段轮替与负载均衡,无需手动配置。
  4. 严谨验证:使用 TLA+ 形式化验证分布式逻辑。
  5. 灵活性:可独立部署或作为 Rust 库嵌入使用。

仓库:https://github.com/nubskr/walrus

讨论:https://www.reddit.com/r/rust/comments/1p7mi2m/i_built_a_distributed_message_streaming_platform/

Hurl v7.1.0 更新

Hurl 是基于 Rust 开发的命令行 HTTP 测试工具),在该版本中:

  1. 自动美化 (核心特性):默认对 JSON 响应进行格式化和语法高亮,无需通过管道传输给 jq 即可获得清晰易读的输出。
  2. 新功能增强:新增了 isObjectisList 断言(Predicates),以及 utf8Decode / utf8Encode 过滤器。
  3. 体验升级:不仅是 HTTP 客户端,更是强大的 API 测试工具,通过视觉优化进一步提升了终端调试体验。

讨论:https://www.reddit.com/r/rust/comments/1p7309p/hurl_710_the_pretty_edition/

讨论:标准库的文件写入 API 可能会静默地丢失数据

在某些文件系统(尤其是 NFS)上,close 操作可能用于刷新内部缓冲区,并可能返回写入错误。Rust 会默默地丢弃这些错误,导致数据悄无声息地丢失。

这在几年前被报告过 https://github.com/rust-lang/rust/issues/98338

讨论:https://www.reddit.com/r/rust/comments/1p7by82/standard_library_file_writing_can_lead_to_silent/

--

From 日报小组 苦瓜小仔

社区学习交流平台订阅:

评论区

写评论

还没有评论

1 共 0 条评论, 1 页