为什么在生产环境,建议 Rust ?

本文探讨了Rust在生产环境中的应用,强调了其在稳定性、内存安全、低成本错误修复以及高性能方面的优势,包括npm迁移到Rust以提升服务长期稳定性的案例。
摘要由CSDN通过智能技术生成

大家好,我是渔夫。

今天分享主题,为什么在生产环境中建议 Rust 的原因。

美好的周末,已经过一半了,正在刷手机的伙伴,有空不妨一起来了解 Rust 在生产环境中的好处与挑战。

最近以来,发现大家对 Rust 的兴趣激增,包括科技巨头微软、谷歌等技术大佬纷纷站出来分享他们在关键系统中使用 Rust 的经验和取得成果。还有我最近在微信指数上,关注大家对 Rust 的搜索指数,也是异常的增长。

在这里插入图片描述

然而,也有大部分没有在重要生产能力中利用 Rust 或仅在非关键系统中使用 Rust 的。这样导致对 Rust 在生产环境中的应用程序的也有一定的理解出现偏差,尤其是在中小型企业或个人,因为他们往往没有得到真实环境中去实验。

也很好理解,小公司会带来很多成本和风险问题,只有当科技巨头先开始重写带来显着好处后,未来应该越多公司会考虑选择它。

为什么大型公司都尝试在生产环境中去验证 Rust,我觉得大公司更加的看重稳定性、长期可维护性、性能安全与效率等。

错误发现得越晚,修复的成本就越高

在软件开发的生命周期中,错误检测和修复是一个至关重要的过程。错误如果在早期阶段被及时发现并修复,其成本相对较低,因为它们通常只影响到有限的代码和功能。

如果错误在生产环境中被揭露,修复这些错误的代价就会显著增加的,因为后期的错误可能涉及到更广泛的系统组件,需要更多的时间来定位问题,并且可能会影响到已经部署的系统和用户数据。

在生产中发现的错误比在开发过程中发现的错误修复成本要高得多,所以说,错误发现越晚,修复代价就更高。

另外,微软也在一项调查中发现,他们 70% 的 bug 大部分软件缺陷源于内存安全问题,2018年的CVE漏洞修复成本高达15万美元/个。所以,记得有位高管在推特发文宣布,科技界应该弃用C++ 而拥抱 Rust。因为 Rust 可以通过其强类型系统和借用检查器,能在编译阶段就捕获这类错误,从而显著降低修复成本。(推特此文发后,还被C++之父怼了,哈哈!)

节约成本

Rust 的运行时开销很低,对于处理高请求量的服务至关重要,它允许在相同工作量下使用更少的资源,则可以为亚马逊节省大量云基础设施成本。

例如,AWS有一项名为 Firecracker 的服务,它以非常低的开销运行虚拟机。它为 AWS Lambda 函数和 AWS Fargate 容器提供支持。

每个 microVM Firecracker 消耗约 5 MiB 内存,意味着你可以在同一实例上运行数千个 vCPU 和内存配置差异很大的安全虚拟机。更好的硬件利用率意味着公司的成本更低。Firecracker 使 AWS 能够提高 Fargate 的效率,从而将成本节省惠及客户。结果,他们能够将 Fargate 的价格降低多达 50%

Firecracker 微虚拟机(microVM)的内存消耗仅为5 MiB,这使得在单一实例上能够高效运行数千个具有不同 vCPU 和内存配置的安全虚拟机。大家想想,这种高效的硬件利用率极大的降低了公司的运营成本啊。

来自AWS 公告:Firecracker 使 AWS 能够提高 Fargate 的效率,从而将成本节省惠及客户。结果,他们能够将 Fargate 的价格降低多达 50%。

在这里插入图片描述

未来长期可持续性,建议 Rust

有位 npm 前工程师 Chris Dickinson 他是这样评价 Rust,”我对 Rust 最大的赞美是它很无聊,这是一个惊人的赞美“。

大家都知道 npm ,它是 JavaScript 生态系统的核心,每天处理高达13亿次的软件包下载。其服务长期的稳定性至关重要的。早在 2019 年,npm 注册表已迁移至 Rust 了,来提升服务长期稳定性。

性能优势,且效率高效

Rust 有卓越的性能,受到很多程序员的青睐,如多线程处理方面表现出色。如 rayon 和 Tokio被认为是开发高性能应用的首选。Rust 不仅提升了执行速度,还提高了能源效率。根据 Pereira 等人的研究,Rust 在运行时性能上与C/C++ 持平,比 Go 快 2-3倍,比 Python快 70倍。

有效利用计算资源对公司的影响不仅仅是原始执行速度,更加重要方面是能源效率。

在这里插入图片描述

Github地址:https://github.com/metashops/GoFamily

我是渔夫,现在在国内某某云程序员,业余独立开发者,探索副业,生活、技术、非科班转码经验等相关文章,欢迎关注,和渔夫一起成长。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值