Flare后臺(tái)服務(wù)開(kāi)發(fā)框架
Flare 是廣泛投產(chǎn)于騰訊廣告后臺(tái)的現(xiàn)代化 C++ 開(kāi)發(fā)框架,包含了基礎(chǔ)庫(kù)、RPC、各種客戶端等。主要特點(diǎn)為易用性強(qiáng)、長(zhǎng)尾延遲低。
Flare 是騰訊吸收先前服務(wù)框架和業(yè)界開(kāi)源項(xiàng)目及最新研究成果開(kāi)發(fā)的現(xiàn)代化的后臺(tái)服務(wù)開(kāi)發(fā)框架,旨在提供針對(duì)目前主流軟硬件環(huán)境下的易用、高性能、平穩(wěn)的服務(wù)開(kāi)發(fā)能力。
Flare 項(xiàng)目開(kāi)始于 2019 年,目前廣泛應(yīng)用于騰訊廣告的眾多后臺(tái)服務(wù),擁有數(shù)以萬(wàn)計(jì)的運(yùn)行實(shí)例,在實(shí)際生產(chǎn)系統(tǒng)上經(jīng)受了足夠的考驗(yàn)。于 2021 年 5 月開(kāi)源。
特點(diǎn)
- 現(xiàn)代 C++ 設(shè)計(jì)風(fēng)格,廣泛采用了 C++11/14/17/2a 的新的語(yǔ)法特性和標(biāo)準(zhǔn)庫(kù)
- 提供了 M:N 的線程模型的微線程實(shí)現(xiàn)Fiber,方便業(yè)務(wù)開(kāi)發(fā)人員以便利的同步調(diào)用語(yǔ)法編寫(xiě)高性能的異步調(diào)用代碼
- 支持基于消息的流式 RPC支持
- 除了 RPC 外,還提供了一系列便利的基礎(chǔ)庫(kù),比如字符串、時(shí)間日期、編碼處理、壓縮、加密解密、配置、HTTP 客戶端等,方便快速上手開(kāi)發(fā)業(yè)務(wù)代碼
- 提供了靈活的擴(kuò)充機(jī)制。方便支持多種協(xié)議、服務(wù)發(fā)現(xiàn)、負(fù)載均衡、監(jiān)控告警、調(diào)用追蹤等
- 針對(duì)現(xiàn)代體系結(jié)構(gòu)做了大量的優(yōu)化。比如 NUMA 感知的調(diào)度組和對(duì)象池、零拷貝緩沖區(qū)等
- 高質(zhì)量的代碼。嚴(yán)格遵守 Google C++ 代碼規(guī)范,測(cè)試覆蓋率達(dá) 80%
- 完善的文檔和示例以及調(diào)試支持,方便快速上手
系統(tǒng)要求
- Linux 3.10 或以上內(nèi)核,暫不支持其他操作系統(tǒng)
- x86-64 處理器,也支持 aarch64 及 ppc64le,但是未在生產(chǎn)環(huán)境上實(shí)際使用過(guò)
- GCC 8 或以上版本的編譯器
評(píng)論
圖片
表情
