前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Rust生态的现状和未来

Rust生态的现状和未来

作者头像
后端云
发布2022-11-25 16:55:48
1.1K0
发布2022-11-25 16:55:48
举报
文章被收录于专栏:后端云后端云

现状

Rust是目前最有未来的一门语言,已在所有领域开花结果。

操作系统

英特尔已经开始致力于让Rust实现与C相同的功能,微软也或将加入其中。由于Rust缺少C的一些功能,该团队发现Rust将最适用于新近开发的Windows组件。假如微软将部分代码库迁移到Rust,我也不会感到吃惊。微软已经为Rust搭建了一个标准Windows库,它具备C++版本的所有功能;Linux也在考虑将一些内核迁移到Rust。这两大操作系统之间有可能展开竞争,看谁能最先将Rust代码投入生产。

也有几个试水的小操作系统内核已经用纯rust编写,另外linux驱动,linux库,linux内置工具大量已经用rust编写。

google下一代全平台操作系统fuschia,现在很低调,2022年7月登进去,还是是每天都有大量代码merge。2016 年开始开发的 Fuchsia 操作系统,在 2020 年 12 月首次亮相于 google open source,其中 22% 的代码为 Rust 编写。2022年7月再去看,已经存量的底层代码已经变成一大半是用rust编写。现在merge进去的底层代码几乎都是Rust,感觉除了维护,新的内容都是用Rust编写。

云原生

Rust在云原生的代表项目(随便列举几个):

  • https://github.com/WasmEdge/WasmEdge
  • https://github.com/krustlet/krustlet
  • https://github.com/openeuler-mirror/stratovirt
  • https://github.com/containers

WasmEdge:用于边缘计算的云原生 WebAssembly 运行时 ,WasmEdge 是目前市场上最快的 Wasm VM。由 CNCF 进行托管。

krustlet是微软的项目:Kubernetes Rust Kubelet。

stratovirt华为的项目:代替qemu的rust重构的qemu,说已经可以让虚拟机在50ms内启动。

podman 所在的 https://github.com/containers 组织,已经写了很多轮子, 包括 buildah 和 skopeo 这两个工具,与 podman 一起被称为下一代容器工具。

runc 是一个有名的 low-level OCI rumtime, 他们就开发了一个 crun . podman 早期版本使用 runc, 最新的版本已经使用 crun 了。

众所周知, golang 是容器生态的主要语言, podman 也是 go 写的,但是在 podman 4 的版本中, podman 增加了非 CNI 的网络栈支持, 这几个工具是 netavark 和 aardvark-dns, 这两个工具是 rust 写的, 而且还有 youki 这个 rust 写的 low-level OCI runtime, 不知道将来某一天 podman 会不会默认使用 youki , 还有好几个 rust 写的容器技术相关的应用和库, 这是要与 golang 分天下的节奏。

区块链

Rust已完全取代Golang在区块链的地位,成为首选语言。

嵌入式,机器人

Rust在大量蚕食c/c++的市场

参考 https://github.com/rust-embedded/awesome-embedded-rust

中间件

在数据处理层的中间件,Rust已经有很多生产级的应用。这个领域是很多公司试水Rust开发项目的首选领域。也是Rust开始认为最擅长的领域。最先大规模应用的是金融交易领域,输赢就在响应的毫厘之间。

GPU和游戏

例如:

  • https://github.com/Rust-GPU/Rust-CUDA
  • https://github.com/EmbarkStudios/rust-gpu
  • https://github.com/bevyengine/bevy
  • https://github.com/FyroxEngine/Fyrox

机器学习和科学计算

Transformers,linfa,Polars,oxide-enzyme,MegFlow,qdrant等等

前端

google的下一代全平台操作系统fuschia的前端是google自己的一套 Flutter+Dart 生态。

前端原来是js和ts的天下,js是号称网页版的汇编,ts是完全兼容js的更高级的语言,js工具链都是js编写的。如今javascript的所有工具链快要完全被rust取代了。Rust 开始替换 Javascript 的 Web 生态系统的重要组成部分包括压缩(Terser)、编译(Babel)、格式化(Prettier)、打包(webpack)、代码检查(ESLint)、以及更多其他的库。Rust Is The Future of JavaScript Infrastructure. Node.js 的创始人推出了Rust语言的Deno项目(js/ts的运行时),想要替换node.js。前端两大发展方向:wasm和js/ts 都被rust拿下。

web框架

多如牛毛的用于web后端开发的Rust web框架。Rocket,actix-web,yew,warp,axum,tokio等等。

Rust FFI(Foreign Function Interface)

参考 https://doc.rust-lang.org/nomicon/ffi.html

上面都是Rust生态的现状,那未来呢?

Rust就如自己的名称一样,一种真菌的名字,这是要成为大一统的语言,大一统整个语言生态吗?

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-07-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 后端云 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 现状
    • 操作系统
      • 云原生
        • 区块链
          • 嵌入式,机器人
            • 中间件
              • GPU和游戏
                • 机器学习和科学计算
                  • 前端
                    • web框架
                      • Rust FFI(Foreign Function Interface)
                      • 上面都是Rust生态的现状,那未来呢?
                      相关产品与服务
                      容器服务
                      腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
                      领券
                      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档