歡迎您光臨本站 註冊首頁

百度開源專案 BFE 被 CNCF 接納為 Sandbox Project

←手機掃碼閱讀     admin @ 2020-06-30 , reply:0

2020年6月24日,BFE開源專案被CNCF (Cloud Native Computing Foundation,雲原生計算基金會)正式接納為Sandbox Project。這是百度第一個被CNCF接納的開源專案,也是在網路方向上中國第一個被CNCF接納的開源專案。

BFE原名為Baidu Front End(百度統一前端),是百度的統一七層流量轉發平臺。BFE平臺目前已接入百度大部分流量,每日轉發請求接近1萬億,峰值QPS超過1000萬。在2019年百度春晚紅包活動中,BFE平臺在超大使用者壓力、數次流量波峰下平穩執行,保證了春晚紅包活動的順利進行。

作為綜合的流量轉發平臺,BFE平臺集成了以下4大功能:

  • 流量接入和轉發:支援HTTP、HTTPS、HTTP/2、QUIC等多種協議,並支援強大的應用層路由能力
  • 流量全域性排程:支援由外網流量排程和內網流量排程共同構成的全域性流量排程系統
  • 安全和防攻擊:支援黑名單封禁、精細限流和應用層防火牆(WAF)等多種防攻擊能力
  • 實時資料分析:支援分鐘級的超高維度時序報表

作為BFE平臺的核心元件,BFE轉發引擎從2012年開始研發,並於2014年使用Go語言完成重構。由於基於Go語言,和業界普遍使用的Nginx開源軟體相比,BFE具有以下優勢:

  • 研發效率高:Go語言的開發效率遠高於C語言(及Lua),在程式碼的可維護性方面也有巨大優勢。
  • 系統的安全和穩定性高:Go語言沒有C語言固有的緩衝區溢位隱患,規避了大量的穩定性和安全風險;另外對於異常可以捕捉,保證程式在快速迭代上線的情況下也不崩潰。

有理由相信,從長期趨勢看,基於更高階程式語言的軟體系統會逐步取得競爭的優勢。

CPU等硬體資源的價格仍會快速下降,而開發人力成本、專案研發風險、系統穩定性/安全性方面會成為更重要的決策考慮。從這方面出發,主要基於C語言的Nginx會逐步衰落,而類似BFE這樣的基於更高階程式語言的軟體會逐步成為主流。

另外,BFE在設計中,還特別增加了企業級應用場景的考慮:

  • 轉發場景的直接支援:和Nginx這樣從Web Server轉型為Proxy的進化路徑不同,BFE直接為轉發場景設計,從轉發模型和轉發配置方面更滿足轉發場景的需求
  • 多租戶的支援:在雲端計算的場景下,多租戶複用是普遍的需求。在BFE的設計中,內建提供了多租戶的支援。
  • 結構化的配置:BFE的配置設計,大量使用JSON這樣的結構化方式,便於和相關配置管理系統對接
  • 豐富的監控探針:作為一個工業級軟體,在BFE的設計中充分考慮了線上監控的需求,BFE程式通過HTTP方式向外暴露數千個內部狀態變數

為了促進負載均衡技術的交流和發展,BFE的轉發引擎於2019年7月正式開源,並獲得了廣泛的關注。2019年11月19日,BFE開源專案登上GitHub Trending Top 3。2019年12月,BFE開源專案的Github stars超過3000。

BFE開源支援以下重要能力:

1、主流網路協議接入

  • 支援HTTP/HTTPS/SPDY/HTTP2/WebSocket等
  • 支援TLS/HTTP/ WebSocket反向代理模式

2、可擴充套件外掛框架

  • 通過可擴充套件外掛框架,快速定製開發擴充套件模組,滿足業務定製化需求
  • 內建重寫、重定向、流量修改、封禁等豐富外掛

3、基於請求內容的分流

  • 基於領域專有語言的分流規則,滿足複雜業務場景定製化流量轉發
  • 支援完備的分流條件原語集,包括基於請求內容(URI/Header/Cookie等)以及請求上下文(IP、協議、標籤、時間等)的條件原語。

4、靈活的負載均衡策略

  • 支援叢集級別負載均衡及例項級別負載均衡,實現多可用區容災及過載保護
  • 內建加權輪詢、加權最小連線數策略,基於IP或請求內容識別使用者實現會話保持

CNCF是雲端計算領域全球頂級的開源社群。BFE開源專案在2020年啟動了加入CNCF的申請工作。經過一系列的準備工作,於2020年6月18日通過CNCF SIG-NETWORK的答辯,並在不到一週內收到了被CNCF TOC接受的通知。在加入CNCF後,BFE將改名為Beyond Front End。

BFE開源技術已在百度內被HTTPDNS、雲加速、BML等產品使用,並將和百度的雲原生產品進一步深入結合。BFE商用產品已經被度小滿、央視網等客戶選用,並已經在多個客戶進行了測試驗證。BFE將進一步擴大開源範圍,加強開源生態的建設,並基於開源建立百度負載均衡的商業生態。

相關材料:


[admin ]

來源:OsChina
連結:https://www.oschina.net/news/116814/bfe-join-cncf
百度開源專案 BFE 被 CNCF 接納為 Sandbox Project已經有88次圍觀

http://coctec.com/news/all/show-post-240357.html