2025了,你对Rust的看法改变了吗?

发布时间:
2025-03-24 22:26
阅读量:
1

确实有一些变了,2023年底到2024年的时候因为看了太多 rust 相关资讯,导致我想要用 rust 重写目前的 NetEngine 项目,这是我自己做的一个基于 .net 开发的项目基础框架。

github.com/dashiell-zha

然后开始学习 rust,学了一段时间之后忽然意识到了一个问题。

其实对于很多业务系统性能似乎并不会因为使用 rust 重写而提升多少,因为主要瓶颈其实在于数据库层面。

因为我经手开发的项目大部分都是 webapi 这种 io密集型的应用,不属于 cpu计算密集型,所以自己会有这种想法和感受,如果你的项目是纯粹的 cpu 计算密集型,那用 rust 重写性能提升可能会比较明显。

数据库操作是主要瓶颈

  • 大多数业务API的耗时主要在数据库查询、事务处理上
  • 无论使用什么语言,如果SQL查询效率低下,系统性能都会受限
  • 一个未优化的查询可能耗时几百毫秒甚至几秒,远超语言层面带来的几毫秒差异

连接池和I/O等待

  • 数据库连接数有限,在高并发场景下往往是首先耗尽的资源
  • 不管用什么语言,同样数量的数据库连接能处理的请求是有上限的
  • 异步I/O可以提高并发,但这在现代.NET中也已经实现得很好

现实业务场景

  • 典型业务API处理流程:认证授权 → 数据校验 → 数据库操作 → 业务逻辑 → 返回结果
  • 其中数据库操作通常占总处理时间的70-90%
  • 语言层面的优化最多影响剩下的10-30%部分

所以想明白这几点之后,我打消了想要用 rust 重写当前项目的冲动。

然后用业余的时间开发了一个对自己确实有用有价值的 SSL 证书签发和维护系统,有兴趣的朋友可以试试看,因为我日常需要维护很多服务器,有 windows 有 linux 很多客户的项目都需要配置 ssl 证书,前面几年都要自己定期人工维护,就很麻烦,后面就想着要开发一个自动化的工具,所以就有了这个项目。

CertSvc 通配符证书_泛域名证书_SSL证书签发托管平台


可以签发通配符证书并实现证书自动运维续签,欢迎大家使用。

END