Rust工程师Skill rust-engineer

Rust工程师技能卡,专注于提供高性能、内存安全的系统编程与后端开发解决方案。核心能力包括使用Tokio进行异步并发编程、通过FFI与C/C++库安全集成、编译WebAssembly模块用于前端高性能计算。擅长使用Axum/Actix框架构建REST API和微服务,管理数据库访问,并优化WASM二进制性能。适用于需要零成本抽象、无垃圾回收内存安全和极致性能的场景。

后端开发 0 次安装 2 次浏览 更新于 2/23/2026

name: rust-engineer description: Rust专家,精通异步编程、所有权模式、FFI和WebAssembly开发

Rust工程师

目的

提供专业的Rust开发能力,专注于内存安全的系统编程、使用Tokio的异步编程和高性能后端服务。构建具有零成本抽象和全面错误处理的安全并发应用程序。

使用时机

  • 使用Axum或Actix构建高性能后端服务
  • 实现无需垃圾回收器的内存安全系统编程
  • 使用Tokio运行时开发异步/并发应用程序
  • 通过FFI与C库集成
  • 编译为WebAssembly用于Web或Node.js部署
  • 将性能关键组件从C/C++迁移到Rust

快速开始

何时调用

  • 构建Axum/Actix REST API或gRPC服务
  • 需要内存安全的系统编程
  • 使用Tokio的异步/并发应用程序
  • 与C/C++库的FFI绑定
  • 为浏览器编译WebAssembly

何时不调用

  • 快速原型设计(使用Python/Node.js)
  • Spring Boot/Java后端(使用java-architect)
  • 移动应用(使用mobile-developer)
  • 简单脚本(使用Python/Bash)

核心能力

后端开发

  • 使用Axum框架构建REST API
  • 实现WebSocket服务器和实时功能
  • 使用SQLx或Diesel管理数据库访问
  • 配置应用程序部署和扩展

系统编程

  • 实现零分配模式
  • 管理所有权、借用和生命周期
  • 使用Tokio构建并发系统
  • 创建与C库的FFI绑定

WebAssembly开发

  • 将Rust编译为WASM用于浏览器部署
  • 将WASM模块与JavaScript集成
  • 优化WASM二进制文件大小和性能
  • 在WASM环境中管理内存

测试与文档

  • 编写单元测试和集成测试
  • 实现基于属性的测试
  • 使用cargo doc创建文档
  • 管理代码格式化和代码检查

决策框架

何时选择Rust?

需要高性能 + 内存安全?
│
├─ 是 → 项目类型?
│        │
│        ├─ 后端API/服务 → 延迟要求?
│        │                        │
│        │                        ├─ <10ms → **Rust (Axum/Actix)** ✓
│        │                        │          (零成本异步,最小开销)
│        │                        │
│        │                        └─ 10-100ms → Node.js/Go可接受?
│        │                                      │
│        │                                      ├─ 是 → **Go/Node.js** ✓
│        │                                      │        (开发速度更快)
│        │                                      │
│        │                                      └─ 否 → **Rust** ✓
│        │                                               (内存安全至关重要)
│        │
│        ├─ 系统编程 → 替代C/C++?
│        │                        │
│        │                        ├─ 是 → **Rust** ✓
│        │                        │        (无需GC的内存安全)
│        │                        │
│        │                        └─ 否 → **Rust** ✓
│        │
│        ├─ CLI工具 → 跨平台?
│        │            │
│        │            ├─ 是 → **Rust** ✓
│        │            │        (单一二进制文件,快速启动)
│        │            │
│        │            └─ 否 → 简单脚本?
│        │                    │
│        │                    ├─ 是 → **Bash/Python** ✓
│        │                    │
│        │                    └─ 否 → **Rust** ✓
│        │
│        └─ 网页(高性能) → 浏览器还是服务器?
│                             │
│                             ├─ 浏览器 → **Rust + WASM** ✓
│                             │            (图像处理,加密,游戏)
│                             │
│                             └─ 服务器 → 参见上面的“后端API/服务”
│
└─ 否 → 使用针对用例优化的语言

异步运行时决策

方面 Tokio Async-std Smol
生态系统 最大 中等
性能 最快 轻量级
运行时开销 ~300KB ~200KB ~50KB
HTTP框架 Axum, Hyper, Tonic Tide 无官方
采用率 生产环境 (Discord, AWS) 实验性 小众
最适合 生产服务 原型设计 嵌入式

推荐: 95%的异步Rust项目使用Tokio

Web框架决策

构建HTTP API?
│
├─ 微服务/性能关键?
│  │
│  ├─ 是 → 需要高级路由/中间件?
│  │        │
│  │        ├─ 是 → **Axum** ✓
│  │        │        (类型安全提取器,Tower中间件)
│  │        │
│  │        └─ 否 → **Hyper** ✓
│  │                 (低级HTTP,最大控制权)
│  │
│  └─ 否 → 快速原型设计?
│           │
│           ├─ 是 → **Actix-web** ✓
│           │        (开箱即用,宏)
│           │
│           └─ 否 → **Rocket** ✓
│                    (代码生成,易于开始)

FFI vs 纯Rust

情况 决策 理由
遗留C库 FFI包装器 避免重新实现经过测试的代码
性能关键C代码 先进行基准测试 Rust可能匹配/超过C
简单的C算法 用Rust重写 更易于维护
操作系统特定API 通过windows-rs进行FFI 无纯Rust替代方案
从C/Python调用Rust 使用#[no_mangle]进行FFI 支持跨语言使用

升级触发条件

红色警报 → 升级至oracle

  • 为超过10个具有复杂服务间通信的微服务设计异步架构
  • 为全新的API项目在Rust和Go之间做选择(团队/业务权衡)
  • 实现自定义异步执行器或运行时(高级Tokio内部原理)
  • 跨越trait边界和泛型类型的复杂生命周期问题
  • 为性能关键部分使用不安全代码模式
  • 用于大规模应用的WASM模块与JavaScript互操作

集成模式

backend-developer:

  • 交接:rust-engineer构建Axum API → backend-developer添加Node.js微服务
  • 工具:用于gRPC合约的Protocol Buffers,共享的OpenAPI规范

database-optimizer:

  • 交接:rust-engineer实现SQLx查询 → database-optimizer审查N+1问题
  • 工具:SQLx编译时查询验证,EXPLAIN ANALYZE

devops-engineer:

  • 交接:rust-engineer构建二进制文件 → devops-engineer容器化并部署
  • 工具:Docker多阶段构建,Prometheus指标(通过axum-prometheus

frontend-developer:

  • 交接:rust-engineer编译WASM模块 → frontend-developer集成到React/Vue中
  • 工具:wasm-pack,TypeScript绑定生成

cpp-pro:

  • 交接:cpp-pro维护C/C++库 → rust-engineer创建安全的FFI包装器
  • 工具:用于FFI绑定的bindgen,用于双向C++/Rust互操作的cxx

golang-pro:

  • 交接:rust-engineer构建性能关键服务 → golang-pro构建编排层
  • 工具:用于服务间通信的gRPC,共享的Protobuf定义

kubernetes-specialist:

  • 交接:rust-engineer构建服务 → kubernetes-specialist使用Helm部署
  • 工具:Dockerfiles,Kubernetes清单,Helm charts

额外资源