写点什么

Cloudflare 开源基于 Rust 语言的 Pingora 框架

  • 2024-02-29
    北京
  • 本文字数:705 字

    阅读完需:约 2 分钟

大小:331.32K时长:01:53
Cloudflare开源基于Rust语言的Pingora框架

早在 2022 年,Cloudflare 就宣布他们将放弃 Nginx,转而使用内部 Rust 编写的软件,名为 Pingora。当地时间 2 月 28 日,Cloudflare 宣布开源 Pingora 框架。

 

据悉,Pingora 是一个 Rust 异步多线程框架,用于构建可编程网络服务,采用 Apache 2.0 开源许可证。Pingora 长期以来一直在 Cloudflare 内部使用,能够维持大量流量,而现在 Pingora 正在开源,以帮助在 Cloudflare 之外构建基础设施。

 

Cloudflare 将 Pingora 框架描述为:

 

“Pingora 提供了库和 API,用于在 HTTP/1 和 HTTP/2、TLS 或 TCP/UDP 之上构建服务。作为代理,它支持 HTTP/1 和 HTTP/2 端到端、gRPC 和 websocket 代理。(HTTP/3 支持已在路线图上。)它还具有可定制的负载平衡和故障转移策略。为了合规性和安全性,它支持常用的 OpenSSL 和 BoringSSL 库,这些库具有 FIPS 合规性和后量子性除了提供这些功能之外,Pingora 还提供过滤器和回调,以允许用户完全自定义服务应如何处理、转换和转发请求。这些 API 对于 OpenResty 和 NGINX 用户来说尤其熟悉,因为许多 API 直观地映射到 OpenResty 的“ *_by_lua”回调。

 

在操作上,Pingora 提供零停机优雅重启来升级自身,而不会丢弃单个传入请求。Syslog、Prometheus、Sentry、OpenTelemetry 和其他必备的可观察工具也可以轻松与 Pingora 集成。”

 

Cloudflare 宣布 Pingora 开源,其中还包含一个使用它构建负载均衡器的示例。Pingora 处于 1.0 之前的阶段,尚不具备 API 稳定性,Cloudflare 目前没有计划支持非 Unix 操作系统。

 

Pingora Rust 代码可在GitHub上获取。

 

Pingora 项目地址:https://github.com/cloudflare/pingora

 

参考链接:https://www.phoronix.com/news/Cloudflare-Pingora-Open-Source

2024-02-29 10:537764
用户头像
李冬梅 加V:busulishang4668

发布了 1155 篇内容, 共 772.9 次阅读, 收获喜欢 1283 次。

关注

评论 1 条评论

发布
用户头像
终于开源了,等了好久了,昨天还在想这个事情。
2024-02-29 18:35 · 广东
回复
没有更多了
发现更多内容

分享一个从源码快速构建应用的小工具

Draven Gorden

开发者工具 开发工具 开源项目

Java和ABAP中的几种引用类型的分析和比较

汪子熙

Java 引用 28天写作 abap 12月日更

一场关于元宇宙公司之死的剧本杀

白洞计划

如何在Flutter应用程序中创建不同的渐变 【Flutter专题14】

坚果

flutter 28天写作 12月日更

Linux一学就会之Centos8用户管理

学神来啦

Linux centos 运维 linux云计算

基于星环科技大数据平台 辽宁城市建设职业技术学院打造智慧校园

星环科技

大数据

小程序与H5适合的场景应用都有哪些

Speedoooo

ios开发 APP开发 容器安全 Andriod开发 容器应用

当我们谈论“远程开发”时,我们在谈论什么

Draven Gorden

云原生 开发者工具 开发工具 远程协作 开发环境

Cordova插件中JavaScript代码与Java的交互细节介绍

汪子熙

Java JavaScript 移动应用 28天写作 12月日更

12 月亚马逊云科技培训与认证课程,精彩不容错过!

亚马逊云科技 (Amazon Web Services)

架构师 培训 认证

PackML从会到不会——命令标签(4)

陈的错题集

标准化 PackML

短视频平台的风控系统设计

Bill Zhang

等保工作中常见导致测评结论为差的高风险项

行云管家

网络安全 等级保护 等保测评 等保结论

使用工具Source Monitor测量您Java代码的环复杂度

汪子熙

Java 软件工程 28天写作 12月日更 代码复杂度

带你了解Typescript的14个基础语法

华为云开发者联盟

typescript 数组 开发 js 语法

常用项目部署方案和区别

进击的梦清

DevOps 运维 项目 部署与维护

初识JVM的内存结构

Ayue、

技术专题合集

架构实战营 - 模块五作业

随风King

「架构实战营」

周边生态|RoP 重磅发布 0.2.0 版本: 架构全新升级,消息准确性达 100%

Apache Pulsar

Java 开源 架构 云原生 Apache Pulsar

MySQL探秘(二):SQL语句执行过程详解

程序员历小冰

MySQL 28天写作 12月日更

dart系列之:还在为编码解码而烦恼吗?用dart试试

程序那些事

flutter dart flutter 面向切面 aop 程序那些事 12月日更

vCenter管理软件用什么牌子好?有哪些用处?

行云管家

虚拟化 vcenter

模块5作业

覃飞

☕【并发技术系列】「多线程并发编程」技术体系和并发模型的基础探究(夯实基础)

码界西柚

Java 并发编程 多线程 多进程 12月日更

恒源云(GPUSHARE)_CIFAR-10数据集实战:构建ResNet18神经网络

恒源云

深度学习 算法

我不用“996”,更不用“007”,可我赚的就是比你多

六十七点五

软件测试 自动化测试 接口测试 测试工程师 功能测试

Selenium之css怎么实现元素定位?

六十七点五

大前端 软件测试 自动化测试 接口测试 selenium

Sinfonia: a new paradigm for building scalable distributed systems--翻译理解【1】

Krysta

分布式 transaction Sinfonia DSM 两阶段提交改进

云智慧正式开源运维管理平台(OMP),加速AIOps社区生态建设

云智慧AIOps社区

运维 运维监控 开源软件 运维体系 运维系统

模块五作业

危险游戏

架构实战营

Camtasia视频剪辑功能详解

淋雨

Camtasia

Cloudflare开源基于Rust语言的Pingora框架_编程语言_李冬梅_InfoQ精选文章