Cloudflare开源Rust Pingora框架 每秒支持超过4000万的请求
Pingora框架由Cloudflare开发,其特点包括异步Rust编程、高效的HTTP、gRPC及websocket代理、TLS支持、优雅的重新加载以及可定制的负载均衡和故障转移策略。这些功能让Pingora成为一个鲁棒、高效且高度可编程的网络代理框架。
Pingora简介
Pingora是一个基于Rust语言的框架,用于构建快速、可靠且可编程的网络系统。Pingora已经经过战场测试,它为超过数年的4000万每秒互联网请求提供服务。
特性亮点
异步Rust: 快速并且可靠。
HTTP 1/2端对端代理: 支持HTTP代理操作。
TLS支持: 通过OpenSSL或BoringSSL进行TLS操作。
gRPC和websocket代理: 支持更多协议的代理。
优雅重载: 系统可在不中断服务的情况下进行更新或配置修改。
定制化负载均衡和故障转移策略: 可根据需要调整策略。
多种可观察性工具的支持: 方便进行系统监控和调试。
为什么选择Pingora
安全是首要任务: Pingora提供相较于C/C++更内存安全的服务。
服务对性能要求极高: Pingora保证了高速与效率。
服务需要广泛的定制化: Pingora代理框架提供的API高度可编程。
快速开始
Pingora提供了快速入门指南,其中介绍了如何轻松构建负载均衡器。用户指南涵盖了更多主题,比如如何配置和运行Pingora服务器,以及如何构建自定义的HTTP服务器和代理逻辑。
Pingora工作空间中的主要crate
Pingora: 用来构建网络系统和代理的公共接口crate。
Pingora-core: 定义了协议、功能和基础特征。
Pingora-proxy: 构建HTTP代理的逻辑和API。
Pingora-error: Pingora中使用的通用错误类型。
Pingora-http: HTTP头部定义和API。
Pingora-openssl & pingora-boringssl: 与SSL相关的扩展和API。
Pingora-ketama: Ketama一致性算法。
Pingora-limits: 高效计数算法。
Pingora-load-balancing: Pingora代理的负载均衡算法扩展。
Pingora-memory-cache: 支持异步内存缓存,并带有防止缓存雪崩的锁。
Pingora-timeout: 更高效的异步定时器系统。
TinyUfo: Pingora-memory-cache后面的缓存算法。
系统要求
操作系统
Linux作为第一环境和主要焦点。尽力确保大多数代码能够在Unix环境下编译,比如在macOS下开发时(尽管可能会缺少一些特性)。支持x86_64和aarch64架构。
Rust版本
Pingora实行最近支持Rust版本政策,至少是6个月之前的版本。
开源许可
项目采用Apache License 2.0许可协议。
总结
Cloudflare的Pingora是一个功能丰富、可靠性强、可编程性高的Rust框架,它提供了构建先进网络服务的强大工具和API。从安全性、性能到定制化,Pingora为满足现代互联网服务的各种需求提供了强有力的支持。通过深入探索Pingora,开发者可充分利用Rust的优势,构建出符合高标准要求的网络服务及代理。
项目地址
https://github.com/cloudflare/pingora
[超站]友情链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
关注数据与安全,洞悉企业级服务市场:https://www.ijiandao.com/
随时掌握互联网精彩
- 1 习近平乘专机离开巴西利亚 7967585
- 2 王宝强方回应涉嫌欺诈:无愧于心 7947522
- 3 王楚钦把对手拍子打掉了 7854636
- 4 建设网络强国 更好造福人民 7740164
- 5 湖南发现超40条金矿脉 7676354
- 6 郭碧婷 怀孕生子是一件很美好的事 7590649
- 7 王楚钦3-1淘汰德国名将晋级八强 7436328
- 8 黄执中在奇葩说都没有这么激动过 7364094
- 9 烧饼任德云社副总 7281445
- 10 “两新”政策支撑经济回升向好 7189387