AI Infra 的真相:Go 没输,rust也不是取代

0 阅读4分钟

AI Infra 的真相:Go 没输,rust也不是取代

请添加图片描述

作者:吴佳浩

撰稿时间:2026-6-8

最后更新:2026-6-8

本来是不太想写这篇内容,由于在之前的go的文章中的评论区有网友提出以下的观点 请添加图片描述如果你的开发年限大于3年以上大概率是说不出这种话的。但是也感谢这位网友提供的话题 我们今天就来聊聊相关的内容。此篇内容为本人的个人见解和对行业行业的观察而得出(不喜勿喷😄)

引言

最近两年,关于 「Rust 取代 Go」 的声音越来越多。

尤其是在 AI Infra 爆发之后,从 Tokenizer 到推理框架,从向量数据库到高性能网关,大量新项目开始选择 Rust。

于是很多人得出一个结论:

Rust 正在取代 Go。

但如果你真正观察云原生和基础设施领域,会发现现实远比这个结论复杂。

甚至可以说:

Rust 和 Go 目前根本不是竞争关系,而是分工关系。

很多人看到 Rust 的崛起,却忽略了一个更重要的事实:

Rust 真正蚕食的,其实是过去属于 C++ 的地盘。


AI Infra 正在形成新的技术分层

如果观察最近两年的明星项目。

mindmap
  root((AI Infra))

    Python
      Agent
      Workflow
      LangChain
      DSPy
      FastAPI
      模型应用

    Go
      Kubernetes
      Operator
      微服务
      API Gateway
      服务编排
      控制面

    Rust
      Tokenizer
      KV Cache
      VectorDB
      推理引擎
      网络框架
      数据面

    C++
      CUDA
      TensorRT
      FlashAttention
      LLVM
      编译器

    C
      Linux Kernel
      Driver
      Firmware

会发现一种越来越明显的趋势:

flowchart TB

    subgraph AI["AI时代基础设施栈"]
        PY[Python]
        GO[Go]
        RS[Rust]
        CPP[C++]
        C[C]
    end

    PY --> APP[&#34;Agent<br/>Workflow<br/>LLM应用&#34;]

    GO --> CTRL[&#34;Control Plane<br/>Kubernetes<br/>Operator<br/>API Gateway&#34;]

    RS --> DATA[&#34;Data Plane<br/>KV Cache<br/>VectorDB<br/>Inference Engine&#34;]

    CPP --> GPU[&#34;CUDA<br/>TensorRT<br/>FlashAttention&#34;]

    C --> DRIVER[&#34;Kernel<br/>Driver<br/>Firmware&#34;]

    APP --> CTRL
    CTRL --> DATA
    DATA --> GPU
    GPU --> DRIVER

这并不是未来的预测。

而是 2024~2026 年已经发生的现实。


Rust 为什么突然火了?

原因很简单。

AI Infra 出现了大量极致性能场景:

  • Tokenizer
  • KV Cache
  • 向量检索
  • 推理网关
  • GPU 调度
  • 高性能网络

这些组件有一个共同特点:

高并发
低延迟
内存敏感

过去很多项目会选择:

C/C++

而最近几年开始变成:

Rust

很多人因此产生错觉:

flowchart LR

A[AI Infra爆发]
--> B[Rust项目增多]
--> C[媒体报道]
--> D[Rust取代Go]

实际上这里少了一步。

Rust 抢走的很多并不是 Go 的市场。

而是 C++ 的市场。


同一个任务,三种语言会写成什么样?

以推理网关中的 Token 统计为例。

Rust

特点:

  • 零成本抽象
  • 所有权系统
  • 编译期内存安全
use std::sync::Arc;
use tokio::sync::RwLock;

struct TokenCounter {
    counts: Arc<RwLock<Vec<u64>>>,
}

编译器会帮你解决:

  • 数据竞争
  • 悬空指针
  • Use After Free

这些曾经属于 C++ 工程师的噩梦。


Go

特点:

  • Goroutine
  • Channel
  • 工程效率极高
go func(idx int, t string) {
    defer wg.Done()
    results[idx] = uint64(len(strings.Fields(t)))
}(i, text)

代码简单。

维护成本低。

这也是 Kubernetes 最终选择 Go 的重要原因。


C++

特点:

  • 极限性能
  • 手动管理资源
threads.emplace_back([&, i]() {
    results[i] = count_words(texts[i]);
});

自由度极高。

同时风险也极高。

很多线上事故最终都与:

Use After Free

Double Free

Memory Leak

Data Race

有关。


Go 的基本盘其实没动

如果把目光放到整个 Infra 世界。

你会发现:

  • Kubernetes
  • Docker
  • etcd
  • Prometheus
  • OpenTelemetry
  • Argo

这些项目依然建立在 Go 生态之上。

过去十年:

timeline
    title 云原生语言演进

    2014 : Docker爆发
    2015 : Kubernetes崛起
    2017 : Go成为云原生标准
    2020 : 云原生全面普及
    2026 : Go仍然是控制面主流

对于很多企业来说:

基础设施 = Go

已经形成了巨大的生态惯性。

没人会因为 Rust 快一些。

就去重写几十万行生产代码。


企业真正关心什么?

很多开发者关注:

性能
延迟
吞吐量

而 CTO 更关心:

开发效率
招聘难度
维护成本

现实往往是:

项目GoRust
招聘容易较难
学习曲线平缓陡峭
开发效率中等
极限性能极高
维护成本中等
云原生生态极强快速增长

因此大量企业最终的选择是:

flowchart TD

A[是否存在性能瓶颈]

A -->|否| B[继续使用Go]

A -->|是| C[局部引入Rust]

C --> D[高性能模块Rust]
C --> E[控制逻辑Go]

而不是:

All Rust

Rust 真正抢的是谁的市场?

mindmap
  root((Rust崛起))

    媒体视角
      Rust取代Go
      新项目大量使用Rust
      AI Infra爆发

    实际情况
      Rust接手C++
      Go基本盘稳定
      Python统治AI应用

    Rust优势
      内存安全
      无GC
      高性能
      并发安全

    Go优势
      开发效率
      招聘容易
      云原生生态
      Kubernetes

    C++压力
      UseAfterFree
      DoubleFree
      MemoryLeak
      学习成本高

    最终格局
      Python负责AI
      Go负责控制面
      Rust负责数据面

很多文章喜欢讨论:

Rust VS Go

但现实中更合理的问题应该是:

Rust VS C++

因为:

  • Rust 获得了接近 C++ 的性能
  • Rust 拥有远高于 C++ 的安全性
  • Rust 降低了系统软件开发门槛

很多新项目开始出现这样的选择:

过去:

性能要求高

↓

直接上 C++

现在:

性能要求高

↓

优先考虑 Rust

这才是最大的变化。


AI Infra 的最终格局

未来几年更可能出现的是:

flowchart LR

CPP[C++]

CPP --> Rust

Go --> CloudNative[云原生]

Python --> AI[AI应用]

Rust --> AIInfra[AI Infra]

CloudNative --> AIInfra

最终形成稳定格局:

层级主流语言
AI应用层Python
控制面(Control Plane)Go
数据面(Data Plane)Rust
GPU算子层CUDA / C++
驱动层C

结论

过去十年大家讨论的是:

Go 会不会取代 Java?

现在大家讨论的是:

Rust 会不会取代 Go?

但真正发生的事情其实是:

flowchart LR

OLD[&#34;过去十年&#34;]

OLD --> GJ[&#34;Go vs Java&#34;]

NOW[&#34;现在&#34;]

NOW --> RG[&#34;Rust vs Go&#34;]

FUTURE[&#34;未来十年&#34;]

FUTURE --> PGR[&#34;Python + Go + Rust&#34;]

Go 负责让系统跑起来。

Rust 负责让系统跑得更快。

Python 负责让 AI 真正产生价值。

所以问题从来不是:

Rust 会不会取代 Go?

而是:

在 AI Infra 时代,哪些原本属于 C++ 的领域,正在被 Rust 接管。

这才是这场技术变迁真正值得关注的地方。