Rust编译构建太慢,试试换个Cargo镜像源吧

时间:2025-03-09 17:56   作者:ChenReal    阅读:17

Rust什么都好,除了编译构建太慢了。

怎么解决?

我有一计!把Cargo的镜像源,换成国内的镜像,编译构建速度便可大幅提升。

云效平台

最近,我用了5年的CI/CD工具,即将取消免费套餐了。本着能省则省的原则,立刻四处寻租,终于找到替代品“阿里云效”基本上100%覆盖我在腾讯扣丁的所有功能。而且使用起来,感觉更加顺畅了。

而且,云效平台官方提供不仅有.NET全系的云原生构建镜像,连最近Rust的镜像都没有少,简直是为我量身定做一般。哈哈,不得不说缘分呐~~

Rust构建项目

迫不及待的我,马上弄了个Rust项目构建的流水线,体验一番。

虽然项目能构建成功,但是构建时间实在是太太太久了。其实,我也知道Rust构建会比较久,所以,这个项目我预计大概会Build上10分钟。但是,最终结果大大超出了我的预期。竟然,长达20分钟!

这个结果令人难以忍受呀!虽说,阿里云效是可以免费使用,毕竟免费套餐是有quota上限的!不能这么铺张浪费,得想想办法……

分析了一下构建日志,download crate占用了80-90%的构建时间。嗯,看到这里,我心中有数了。或许,可以试试更换一个Cargo镜像源。

替换Cargo镜像

很快就在网上找到了,具体的操作办法:

配置 crates.io 镜像源(cargo 版本 >=1.68)

  • 如果是要全局配置,可以直接编辑~/.cargo/config.toml文件
  • 如果仅是项目的局部配置,也可以选择项目代码里增加配置于Cargo.toml统计目录,创建文件.cargo/config.toml
  • 然后增加aliyun的crates.io 镜像源,并设置替换
[source.crates-io]
replace-with = 'aliyun'
[source.aliyun]
registry = "sparse+https://mirrors.aliyun.com/crates.io-index/"

当然,如果阿里云用得不满意还有这些镜像源,可以供大家选择:

# 中国科学技术大学
[source.ustc]
registry = "https://mirrors.ustc.edu.cn/crates.io-index"

# 清华大学
[source.tuna]
registry = "https://mirrors.tuna.tsinghua.edu.cn/git/crates.io-index.git"
 
# rustcc社区
[source.rustcc]
registry = "https://code.aliyun.com/rustcc/crates.io-index.git"

测试效果

OK,我们直接看“换源”前后的效果吧。

ec9723b9f46c3bd695a34c6d82b6c903.png

通常.NET项目的构建时间一般在2分钟以内。但Rust毕竟是Rust,我们可以宽容一些,构建时长优化到5分钟我已经比较满意了~~

 

评论
0/200