通过 flutter_rust_bridge 使用 Flutter
近日 Flutter 发布了 3.0 版本,如何同时享受 Flutter 和 Rust 的双重优势呢?答案是 flutter_rust_bridge。
该项目将 Flutter 和 Rust 之间进行了高级绑定,带来了以下好处:
github 地址: https://github.com/fzyzcjy/flutter_rust_bridge
blaze:Apache Spark 的矢量化查询加速器
作为 Apache Spark 的加速器,blaze 利用矢量化执行来加速查询处理。它从 Spark 获取一个完全优化的物理计划,将其映射到 DataFusion 的执行计划中,并在 Spark 执行器中执行本机计划计算,同时结合了DataFusion 库的强大功能和 Spark 分布式计算框架的可扩展性。
github 地址: https://github.com/blaze-init/blaze
OneSignal 是如何解决 Rust 内存泄露问题的
在 OneSignal 公司,大家都喜欢 Rust,并且将很多核心业务功能转换成了 Rust 技术栈开发,Journeys 就是其中一个项目。其由几个 gRPC 服务和一个用 Rust 编写的 Kafka 消费者组成,允许客户使用无代码 UI 轻松构建复杂的消息传递工作流。随着 Journeys 的采用率开始增加,以及其开始处理更多事件,他们开始注意到,其内存使用情况令人不安,并不断导致 JourneyX 进程被 OOM Killer 杀死、重启。
事实上,与很多人的第一印象相反,根据 Rust 的规则,内存泄漏是完全安全的,例如我们可以使用 std::mem::forget 故意泄漏尽可能多的内存,尽管最终会导致程序被内核杀死。
OneSignal 最终排查到,导致内存泄露的是对于 tracing 库和析构特性的不当使用,如果你尚未遇到这个问题,不妨来借鉴一下他们的经验教训,也许以后就能避免这类错误。
社区学习交流平台订阅:
- Rust.cc 论坛: 支持 rss
- 微信公众号:Rust 语言中文社区