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 的过滤语言来编写防火墙规则、允许数百万用户编写任意 JavaScript 代码并直接在我们的平台上运行它,以及即时重写 HTML 响应。在实现上述功能过程中,Rust 为这些服务提供了严格的执行边界,让不可能变成可能。与此同时,Rust 让过去困扰行业的内存安全问题日益成为过去。”相关链接:
  • https://blog.cloudflare.com/rust-nginx-module
  • https://twitter.com/Cloudflare/status/1629119206770847744


往期推荐



开源的文件传输工具,简单好用

🔥 用Edge下载Chrome?微软“拉横幅”回应:达咩!

Ambient:Rust编写的高性能多人游戏引擎


这里有最新开源资讯、软件更新、技术干货等内容

点这里 ↓↓↓ 记得 关注✔ 标星⭐ 哦

相关推荐

  • 路透社:开源软件成为贸易战的重要环节
  • 通过 React Router V6 源码,掌握前端路由
  • 阿帕网退役 | 历史上的今天
  • 被“误解”的游戏开发者
  • 分布式锁实现原理与最佳实践
  • “我,月薪6万,在阿里工作9年,有些事真的离职后才知道......”
  • 3.2k!这是我见过最强的消息推送平台!!
  • 再来一批Python pandas高频操作!
  • 比《变形计》还虐人,男明星糊到去种地?收割140亩稻田,搬30吨化肥,挖沟、电焊、改房……真实到离谱!
  • 特价捡漏 | 韩版纯棉短袖3件不到40元,超值福利,手慢无...
  • 早年的婚纱照能有多离谱?朋友圈的女人炸锅了!笑得崩溃哈哈哈哈哈哈哈哈哈哈
  • 今日公开课|面试成功率提高99.99% 架构师1v1直播连线
  • 随时担心被抛弃......大厂外包值不值得去?
  • 脏话越多,代码越好!
  • 谷歌&伯克利:人类反馈RLHD首次入局文生图模型
  • 已上线公测!打开就能用的“中国版ChatGPT”,速来过招
  • 年少偏爱多巴胺,中年才懂内啡肽
  • 理想汽车L8爆出油门失灵,问题持续3年
  • 17万的特斯拉 Model 2 考虑一下?
  • 刚刚宣布!单身的程序员注意了!