Cloudflare 使用 Rust 重写 Nginx C 模块,目标是“去 Nginx”
去年曾报道过,Cloudflare 将 Nginx 替换为内部采用 Rust 编写的 Pingora,目标是构建一个更快、更高效、更通用的内部代理,用作 Cloudflare 当前和未来产品的平台。不过 Cloudflare 的基础设施非常庞大,并且包含许多不同的服务。
近日,Cloudflare 工程师介绍了如何使用 Rust 重写基于 C 语言的 Nginx 模块。Cloudflare 工程师在博客写道,他们用 Rust 为 Cloudflare 基础设施中最古老和最不为人所知的部分——cf-html,编写了替代品。这是一个 Nginx 模块,位于 Cloudflare 的核心反向 Web 代理内部,亦称为 FL (Front Line)。
FL 运行着 Cloudflare 应用程序服务的大部分逻辑,因此这次替换无疑更具挑战性。Cloudflare 称,完成这项工作为他们完全摆脱 Nginx 铺平了道路。未来他们会继续逐步更换用于运行 Nginx/OpenResty 代理的组件,或者无需对自研平台投入大量开发资源就可以完成的组件,从而构建一个没有 Nginx 的未来 (A future without NGINX)。
Cloudflare 工程师非常热爱 Rust 语言,他们最后谈到了 Rust 带来的好处:“大多数人认为编程语言的安全性主要是用于预防出现 bug,但对于一家公司来说,我们发现编程语言的安全优势还可以用来完成一些被认为非常困难、或不可能安全实现的功能需求。比如提供类似 Wireshark 的过滤语言来编写防火墙规则、允许数百万用户编写任意 JavaScript 代码并直接在我们的平台上运行它,以及即时重写 HTML 响应。在实现上述功能过程中,Rust 为这些服务提供了严格的执行边界,让不可能变成可能。与此同时,Rust 让过去困扰行业的内存安全问题日益成为过去。”

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
AI 军备竞赛,Meta 推出全新大型语言模型
ChatGPT 持续火热,大型科技公司争先恐后地涌入 AI 军备竞赛中,这也为 AI 领域又带来了一个新的模型与潜在竞争对手 —— LLaMA。 LLaMA 语言模型全称为 "Large Language Model Meta AI",是 Meta 近日公布的一个全新的大型语言模型(LLM),这是一个模型系列,根据参数规模进行了划分(分为 70 亿、130 亿、330 亿和 650 亿参数不等)。 值得注意的是,其中 LaMA-13B(130 亿参数的模型)尽管模型参数相比 OpenAI 的 GPT-3(1750 亿参数) 要少了十几倍,但在性能上反而可以超过 GPT-3 模型。更小的模型也意味着开发者可以在 PC 甚至是智能手机等设备上本地运行类 ChatGPT 这样的 AI 助手,无需依赖数据中心这样的大规模设施。 项目成员 Guillaume Lample 表示: 与 Chinchilla、PaLM 或 GPT-3 不同,我们只使用公开的数据集,使我们的工作与开源兼容并可重现,而大多数现有模型依赖的数据要么不公开,要么没有记录。 目前 LLaMA 的一个精简版可在 GitHub ...
- 下一篇
Linux 引入新的 SSDFS 文件系统,针对 ZNS SSD 进行优化
Linux 6.3 最新补丁引入了 SSDFS 文件系统支持,这个新的开源文件系统特别针对 ZNS SSD (支持 NVMe 分区命名空间 (ZNS) 的固态硬盘)进行了优化。 ZNS (Zoned Namespaces)SSD 即分区命名空间固态硬盘,通过 NVMe 的新规范实现。ZNS SSD 将容量划分为 zone(分区),在namespace(命名空间)里线性分布。每个zone可以按任意顺序读取,但必须按顺序写入,且在再一次写入前必须要先重置。此外,其 ZNS 命令集公开主机系统和 SSD 之间的分区块存储接口,允许更具优化的数据对齐。 这些特性允许 ZNS SSD 改善其内部数据放置,通过降低 I/O 访问延迟、提高写吞吐量、更低的 QoS 和更大的容量来获得更高的性能。 尽管内核主线已存在 F2FS “闪存友好文件系统”,但从 SSDFS 的介绍来看,该文件系统特对支持 NVMe ZNS 的固态硬盘有特别的优化,比如通过消除垃圾收集的“GC”开销,延长 SSD 寿命/耐用性,且原生支持 ZNS SSD 和 SMR HDD 的严格“仅附加模式”,保证强大的可靠性和稳定的性能。...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8安装Docker,最新的服务器搭配容器使用
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Hadoop3单机部署,实现最简伪集群
- CentOS关闭SELinux安全模块
- CentOS7设置SWAP分区,小内存服务器的救世主
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题