五倍慢于 Go?优化 Rust 的 Protobuf 解码性能

2024-04-12

本文探讨了 GreptimeDB 团队为优化 Protobuf 反序列化开销而尝试的几种方法。GreptimeDB v0.7 的写入性能优化过程中发现,使用 Prometheus 协议解析 Protobuf 数据所花费的时间几乎是 Go 实现的类似产品的五倍。文章详细介绍了如何通过对象池、RepeatedField 机制、将 String 字段更改为 Bytes 类型以及优化 Bytes::slice 操作等步骤来逐步提升 Rust 的 Protobuf 解码性能。

未分类