日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

Pingora正式開源:超強的Nginx替代品,每秒可處理4000萬請求!

來源: 責編: 時間:2024-02-29 14:33:42 208觀看
導讀2 月 28 日,Cloudflare 開源了其自研的 Nignx 替代品:Pingora。這是一個基于 Rust 打造的高速、可靠與可編程的網絡系統。目前,Cloudflare 已使用 Pingora 全面替代 Nginx 。經過實戰檢驗,Pingora 每秒穩定處理超過 4000

ON628資訊網——每日最新資訊28at.com

2 月 28 日,Cloudflare 開源了其自研的 Nignx 替代品:Pingora。這是一個基于 Rust 打造的高速、可靠與可編程的網絡系統。目前,Cloudflare 已使用 Pingora 全面替代  Nginx 。經過實戰檢驗,Pingora 每秒穩定處理超過 4000 萬的網絡請求,持續服務數年。下面就來看一看 Pingora 有什么特別之處!ON628資訊網——每日最新資訊28at.com

Cloudflare 是一個全球性的網絡性能和安全公司,它提供了一系列服務來幫助網站和應用程序改善其在線體驗、增加安全性并加速加載速度。Cloudflare 的主要服務包括:ON628資訊網——每日最新資訊28at.com

  • 內容分發網絡 (CDN):通過在全球各地分布的數據中心緩存和分發您的網站內容,幫助加速網站和應用程序的加載速度。
  • DNS 服務:提供可靠的 DNS 解析服務,確保用戶能夠快速地訪問您的網站或應用程序。
  • 防火墻和安全性:保護您的網站免受 DDoS 攻擊和其他網絡威脅的影響,通過提供強大的防火墻和安全措施。
  • 負載均衡:智能地將用戶流量分發到多個服務器,確保您的網站或應用程序在高流量下仍然保持快速和可靠。

2023 年 1 月,據 Netcraft 對上百萬個站點的調查數據顯示,在 Cloudflare 從第 3 位躍升至第 1 位,即在一個月內超過了 Apache 和  Nginx ,成為了最受歡迎 Web 服務器。ON628資訊網——每日最新資訊28at.com

Pingora 是什么?

Pingora 作為一款功能強大的代理工具,不僅提供了構建HTTP/1、HTTP/2、TLS或TCP/UDP服務的庫和API,還支持HTTP/1和HTTP/2的端到端代理、gRPC和Websocket代理。盡管HTTP/3的支持尚在規劃中,但Pingora已經展現出其前瞻性和可擴展性。為了滿足不同用戶的需求,Pingora配備了高度可定制的負載均衡和故障轉移策略。在安全方面,Pingora支持廣泛使用的OpenSSL和BoringSSL庫,確保服務符合FIPS標準,并采用了后量子加密技術,為用戶提供堅實的安全保障。ON628資訊網——每日最新資訊28at.com

Pingora的另一個亮點是其靈活的過濾器和回調函數機制。這使得用戶能夠根據自己的需求,完全自定義服務的請求處理、轉換和轉發過程。這一特性對于熟悉 OpenResty 和 Nginx 的用戶來說將尤為親切,因為Pingora的API設計直觀且易于與OpenResty的 "*_by_lua" 回調函數對接。ON628資訊網——每日最新資訊28at.com

在操作層面,Pingora提供了零停機時間的優雅重啟功能,確保在升級過程中不會丟失任何傳入請求。此外,Pingora還易于與Syslog、Prometheus、Sentry、OpenTelemetry等關鍵可觀察性工具集成,幫助用戶實時監控和優化服務的性能。ON628資訊網——每日最新資訊28at.com

那什么情況下應該使用 Pingora 呢?ON628資訊網——每日最新資訊28at.com

  • 安全至上:Pingora 是 C/C++ 服務的安全內存替代方案。通過 Pingora,您可以減少編碼錯誤,降低內存安全問題的風險。這意味著將能夠更專注于新功能的開發,而不必擔心潛在的安全隱患。
  • 性能敏感:Pingora 以其快速和高效的性能而著稱。得益于其多線程架構,Pingora 顯著減少了 CPU 和內存資源的消耗。對于需要優化成本和速度的系統,Pingora 無疑是理想的選擇。
  • 高度定制需求:Pingora 提供的 API 高度可編程,適用于構建定制和高級的網關或負載均衡器。無論需求有多么復雜,Pingora 都能提供強大而簡單的實現方式。

有了 Nginx 為什么還需要 Pingora?

Pingora 是 Cloudflare 使用 Rust 構建的新 HTTP 代理,不僅提升了性能,還為Cloudflare客戶帶來了眾多新功能。令人矚目的是,它在實現這些的同時,僅需以往代理基礎架構三分之一的CPU和內存資源。ON628資訊網——每日最新資訊28at.com

隨著Cloudflare業務規模的飛速擴張,其需求已經超越了 Nginx 的處理能力。盡管 Nginx 多年來表現出色,但隨著時間推移,其規模上的局限性逐漸凸顯。包括:ON628資訊網——每日最新資訊28at.com

  • Nginx  架構影響性能:Nginx 的 worker(進程)架構導致每個請求只能由單個worker處理,造成了CPU內核之間的負載不平衡,從而降低了整體性能。此外,這種架構還可能導致執行CPU密集型或阻塞I/O任務的請求減緩其他請求的速度。另外,cloudflare 的用例依賴于高效的連接重用,以減少TCP和TLS握手的時間,加快請求的TTFB。然而,  Nginx  的連接池與單個worker相對應,限制了連接的重用率。當增加更多的worker以進行擴展時,連接會分散在更多的孤立池中,導致連接重用率下降,TTFB增加,并增加了資源消耗。
  • 有些類型的功能難以添加: Nginx 作為 Web 服務器、負載均衡器或簡單的網關表現出色,但對于更高級、定制化的功能需求,它存在一些局限性。在嘗試圍繞  Nginx  構建所需功能時,面臨著與上游代碼庫保持一致的挑戰,這并不容易實現。除此之外, Nginx 社區的活躍度有限,開發工作往往缺乏開源社區的支持和協作。這限制了我們從社區獲取幫助和解決方案的能力。

為了追求更高的性能,并滿足復雜環境中日益增長的功能需求,Cloudflare決定構建全新的解決方案——Pingora。ON628資訊網——每日最新資訊28at.com

ON628資訊網——每日最新資訊28at.com

性能提升

經過對 Pingora 的實際應用與性能數據的收集,觀察到了顯著的性能提升。Pingora在處理HTTP請求時,特別是針對緩存未命中的情況,表現出了出色的性能。Pingora架構的創新之處在于其跨線程共享連接的能力,這顯著提高了連接的重用率,并大幅減少了在 TCP 和 TLS 握手上所花費的時間。ON628資訊網——每日最新資訊28at.com

根據數據,Pingora 將 TTFB(首字節時間)的中位數減少了 5 毫秒,而第 95 個百分位數更是減少了80毫秒。這并非因為代碼運行速度更快,而是因為新架構更有效地管理了連接,從而減少了握手時間。ON628資訊網——每日最新資訊28at.com

此外,與舊服務相比,Pingora每秒的新連接數減少了三分之二。對于一個關鍵客戶,連接重用率從87.1%大幅提升至99.92%,這意味著新連接的數量減少了160倍。換算成實際的時間節省,通過切換到Pingora,每天為客戶和用戶節省了相當于434年的握手時間。ON628資訊網——每日最新資訊28at.com

更安全

在大規模分布式環境中,快速且安全地發布新功能是一項艱巨的任務,尤其是在每秒處理數百萬個請求的情況下。在這樣的環境下,傳統的模糊測試和靜態分析只能提供有限的保障。ON628資訊網——每日最新資訊28at.com

為了增強系統的穩定性和可靠性,Pingora 選擇了使用 Rust 語言,其內存安全語義確保了代碼免受未定義行為的影響,從而增強了對服務正確運行的信心。這種保障能夠將更多精力集中在服務更改與其他服務或客戶來源的交互上,而不是擔憂內存安全或難以診斷的崩潰問題。ON628資訊網——每日最新資訊28at.com

自 Pingora 使用以來,已經處理了數百萬億個請求,而且至今尚未因為服務代碼而導致崩潰。這證明了Rust在內存安全方面的優勢以及 Cloudflare 團隊在開發和維護中的努力。ON628資訊網——每日最新資訊28at.com

更高效

在生產環境中,與舊服務相比,Pingora在相同的流量負載下實現了顯著的資源消耗降低。具體來說,CPU消耗減少了約70%,而內存消耗減少了約67%。這一顯著的節省主要源于幾個關鍵因素。ON628資訊網——每日最新資訊28at.com

首先,Pingora使用Rust編寫的代碼相較于之前使用Lua的代碼,在運行效率上有顯著的提升。Rust作為一種編譯型語言,其性能通常優于解釋型語言如Lua。ON628資訊網——每日最新資訊28at.com

其次,Pingora的架構設計使得數據訪問更加高效。在舊的 NGINX/OpenResty 架構中,Lua代碼訪問HTTP頭時涉及多個步驟,包括從 Nginx C結構中讀取、分配Lua字符串、復制到Lua字符串中,以及后續的垃圾回收。而在Pingora中,這種訪問變得直接而高效,減少了不必要的中間步驟。ON628資訊網——每日最新資訊28at.com

此外,Pingora采用的多線程模型使得跨請求共享數據更加高效。雖然NGINX也提供共享內存,但由于實施限制,每次訪問都需要使用互斥鎖,并且只能存儲字符串和數字。相比之下,Pingora允許通過原子引用計數器直接訪問大多數共享項目,從而提高了數據共享的效率。ON628資訊網——每日最新資訊28at.com

最后,Pingora顯著減少了新連接的數量,這也是CPU節省的一個重要方面。與通過已建立的連接發送和接收數據相比,TLS握手過程更加耗時和資源密集。通過提高連接重用率,Pingora能夠減少新連接的需求,從而進一步降低資源消耗。ON628資訊網——每日最新資訊28at.com

相關鏈接

Github:https://github.com/cloudflare/pingora。ON628資訊網——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-75290-0.htmlPingora正式開源:超強的Nginx替代品,每秒可處理4000萬請求!

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 索尼吉田憲一郎:魏哲家 2021 年一句話,開啟了臺積電日本廠項目

下一篇: Simhash在內容去重中的應用,你學會了嗎?

標簽:
  • 熱門焦點
  • 6月安卓手機性能榜:vivo/iQOO霸占旗艦排行榜前三

    2023年上半年已經正式過去了,我們也迎來了安兔兔V10版本,在新的驍龍8Gen3和天璣9300發布之前,性能榜的榜單大體會以驍龍8Gen2和天璣9200+為主,至于那顆3.36GHz的驍龍8Gen2領先
  • 5月安卓手機好評榜:魅族20 Pro奪冠

    性能榜和性價比榜之后,我們來看最后的安卓手機好評榜,數據來源安兔兔評測,收集時間2023年5月1日至5月31日,僅限國內市場。第一名:魅族20 Pro好評率:97.50%不得不感慨魅族老品牌還
  • Raft算法:保障分布式系統共識的穩健之道

    1. 什么是Raft算法?Raft 是英文”Reliable、Replicated、Redundant、And Fault-Tolerant”(“可靠、可復制、可冗余、可容錯”)的首字母縮寫。Raft算法是一種用于在分布式系統
  • 學習JavaScript的10個理由...

    作者 | Simplilearn編譯 | 王瑞平當你決心學習一門語言的時候,很難選擇到底應該學習哪一門,常用的語言有Python、Java、JavaScript、C/CPP、PHP、Swift、C#、Ruby、Objective-
  • 在線圖片編輯器,支持PSD解析、AI摳圖等

    自從我上次分享一個人開發仿造稿定設計的圖片編輯器到現在,不知不覺已過去一年時間了,期間我經歷了裁員失業、面試找工作碰壁,寒冬下一直沒有很好地履行計劃.....這些就放在日
  • 小紅書1周漲粉49W+,我總結了小白可以用的N條漲粉筆記

    作者:黃河懂運營一條性教育視頻,被54萬人“珍藏”是什么體驗?最近,情感博主@公主是用鮮花做的,火了!僅僅憑借一條視頻,光小紅書就有超過128萬人,為她瘋狂點贊!更瘋狂的是,這
  • 電視息屏休眠仍有網絡上傳 愛奇藝被質疑“薅消費者羊毛”

    記者丨寧曉敏 見習生丨汗青出品丨鰲頭財經(theSankei) 前不久,愛奇藝發布了一份亮眼的一季報,不僅營收和會員營收創造歷史最佳表現,其運營利潤也連續6個月實現增長。自去年年初
  • “又被陳思誠騙了”

    作者|張思齊 出品|眾面(ID:ZhongMian_ZM)如今的國產懸疑電影,成了陳思誠的天下。最近大爆電影《消失的她》票房突破30億斷層奪魁暑期檔,陳思誠再度風頭無兩。你可以說陳思誠的
  • 2納米決戰2025

    集微網報道 從三強爭霸到四雄逐鹿,2nm的廝殺聲已然隱約傳來。無論是老牌勁旅臺積電、三星,還是誓言重回先進制程領先地位的英特爾,甚至初成立不久的新
Top 主站蜘蛛池模板: 漠河县| 通州市| 浙江省| 五家渠市| 星子县| 孟津县| 东兴市| 清涧县| 九江县| 称多县| 和田市| 温宿县| 茶陵县| 左贡县| 随州市| 雷山县| 菏泽市| 汽车| 海安县| 克山县| 高密市| 敖汉旗| 潞城市| 临城县| 吉安县| 肃宁县| 大渡口区| 资阳市| 民丰县| 建湖县| 凤翔县| 科技| 大冶市| 旌德县| 弋阳县| 华池县| 西充县| 元谋县| 来宾市| 沈丘县| 贵南县|