Rust重写推理服务后速度提升了5倍,但我差点被编译器逼疯
为了搞掉在线教育平台批改服务的延迟和内存问题,我用Rust重写了推理网关。结果吞吐暴增5倍,p99延迟从510ms压到42ms,但开发过程几乎让我放弃——Session不支持Send、编译时间漫长、错误信息无法理解。这篇文章记录了我如何手写线程池、用Axum+ONNX Runtime趟过生产坑,以及最终为什么还说“Rust值得,但要用在刀刃上”。
为了搞掉在线教育平台批改服务的延迟和内存问题,我用Rust重写了推理网关。结果吞吐暴增5倍,p99延迟从510ms压到42ms,但开发过程几乎让我放弃——Session不支持Send、编译时间漫长、错误信息无法理解。这篇文章记录了我如何手写线程池、用Axum+ONNX Runtime趟过生产坑,以及最终为什么还说“Rust值得,但要用在刀刃上”。
我把电商推荐系统的推理服务从Python重写成Rust,吞吐量从1200 QPS飙升到6500 QPS,但开发时间从2天暴增到2周。Rust的所有权系统和异步编程让简单功能变得复杂,但性能提升确实惊人。如果你考虑用Rust做AI服务,先看看这篇血泪史。