Cloudflare用Rust重写Nginx C模块,构建没有Nginx的将来
出品 | OSC开源社区(ID:oschina2013)
往年曾报导过 ,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 的过滤语言来编写防火墙规则、容许数百万用户编写肆意 Java 代码并间接在我们的平台上运行它,以及立即重写 HTML 响应。在实现上述功用过程中,Rust 为那些办事供给了严厉的施行鸿沟,让不成能酿成可能。与此同时,Rust 让过往困扰行业的内存平安问题日益成为过往。”
相关链接:
开源的文件传输东西,简单好用
🔥 用Edge下载Chrome?微软“拉横幅”回应:达咩!
Ambient:Rust编写的高性能多人游戏引擎
那里有最新开源资讯、软件更新、手艺干货等内容
点那里 ↓↓↓ 记得 存眷✔ 标星⭐ 哦