替代 Nginx,Cloudflare 开源 Pingora Rust 框架

早在 2022 年,Cloudflare 就曾宣布将放弃 Nginx,转而采用 Pingora —— 一个他们使用 Rust 在内部构建的新 HTTP 代理。时至今日,Cloudflare 宣布在 Apache 2.0 许可下开源了 Pingora 框架。

Pingora 是一个 Rust 异步多线程框架,可以帮助构建 HTTP 代理服务。截至目前,Pingora 已在 Cloudflare 的全球网络中处理了近千万亿的互联网请求。

“我们正在开源 Pingora,以帮助在我们自己的基础设施之外构建一个更好、更安全的互联网。我们希望为我们的客户、用户和其他人提供工具、想法和灵感,以使用内存安全框架构建自己的互联网基础设施。”

根据介绍,Pingora 提供库和 API 来在 HTTP/1 和 HTTP/2、TLS 或 TCP/UDP 之上构建服务。作为代理,它支持 HTTP/1 和 HTTP/2 端到端、gRPC 和 websocket 代理,HTTP/3 支持也在规划当中。它还具有可定制的负载平衡和故障转移策略。为了合规性和安全性,它支持常用的 OpenSSL 和 BoringSSL 库。

除了提供这些功能之外,Pingora 还提供 filters 和 callbacks,以允许用户完全自定义服务应如何处理、转换和转发请求。在运行方面,Pingora 提供零停机优雅重启,可在不丢弃任何传入请求的情况下进行自我升级。Syslog、Prometheus、Sentry、OpenTelemetry 和其他必备的可观测工具也可以轻松与 Pingora 集成。

值得注意的是,Pingora 尚处于 1.0 之前的阶段,不具备 API 稳定性,且 Cloudflare 目前没有计划支持非 Unix 操作系统。

更多详情可查看官方博客。

未经允许不得转载:岩猫星空网 » 替代 Nginx,Cloudflare 开源 Pingora Rust 框架