Celeriant:用 Rust 构建的分布式事件存储数据库
Celeriant 是一个使用 Rust 编写的开源分布式事件存储数据库,作者在 r/rust 社区介绍了项目从 C# 后端迁移到 Rust 的过程,以及即将在 p99-conf 分享的性能测试结果。
项目目前约 15 万行 Rust 代码,作者称其在 AWS i4i.metal 上实现了每秒 100 万次持久化、复制写入。Celeriant 采用按核心分片的写前日志和内存写缓存,冷数据使用每个日志段轮转时持久化的 Bloom filter 辅助聚合存在性和客户端幂等检查;正常集群路径使用 EBS 或本地 NVMe,支持 C# 与 Rust 客户端。
原文链接:https://github.com/celeriant/celeriant-db
Termixel:在终端中渲染 PNG 像素画
Termixel 是一个使用 Rust 编写的终端像素画渲染器,可以直接把 PNG 像素图转换为 Unicode 字符并显示在终端中。
项目尽量减少依赖,当前二进制文件约 200 KB,支持 Linux 和 Windows,也可以从源码构建。作者选择 PNG 解析方案,是为了控制依赖数量和最终二进制大小。
原文链接:https://github.com/genkii/termixel
cs2excel:Rust 编写的 CS2 库存估值 GUI 与 TUI 工具
cs2excel 是一个使用 Rust 编写的 Counter-Strike 2 库存估值工具,可以从 Steam 库存接口读取物品,并结合多个第三方市场价格生成或更新 Excel 表格。
项目提供基于 Iced 的 GUI 和一个 TUI 版本,支持 buff、悠悠有品、CSFloat 等市场数据。工具不连接运行中的 CS2 客户端,而是读取 Steam 的库存接口;首次使用需要把库存物品加入表格,之后可以重新运行程序更新价格。
原文链接:https://github.com/maikLangel0/cs2excel
Rust RFC #3943:移动后复用局部变量存储空间
Rust RFC #3943 讨论在局部变量发生 move 后复用其原有存储空间,以便编译器在变量重新初始化时拥有更多栈空间布局选择。
该提案对应的实现尝试针对已经移动出的值释放旧存储关联,潜在收益包括更早复用栈空间、减少部分函数的栈占用,以及缩短栈分配的生命周期。讨论同时涉及原始指针、地址可观察性和别名规则;相关议题自 2019 年起持续维护,当前 RFC 页面包含实现 PR 和性能测试结果。
原文链接:https://github.com/rust-lang/rfcs/pull/3943
--
From 日报小组 Mike
社区学习交流平台订阅:
评论区
写评论还没有评论