收藏本站

電腦請使用 Ctrl + D 加入最愛
手機請使用 收藏
關閉

小編的世界 優質文選 主機

性能超群的HTTP服務器 搜狗C++服務器引擎發布


字體大小:
2020年9月03日 -
:   
 

快科技官方百家號

另一方面,對多通信計算資源融為一體的解決方案,進一步提升了Workflow引擎的性能。過去開發者在面臨選擇高吞吐網絡框架時,需要自己面對不同計算資源比例而劃分不同大小的線程池。然而每種計算具體資源需求比例是動態變化的,重要性也不一樣,後端響應時長也是動態變動。如今在workflow的加持下,C++服務器引擎也能像Go語言一樣,實現網絡資源異步調度,並且進一步打通計算,磁盤等資源。

引入任務流概念,是搜狗Workflow引擎的另一亮點。Workflow將資源高度封裝,用戶再也接觸不到連接池、線程池、包括想要做aio時的文件fd與各種異步通知機制。這就意味著,在開發階段開發人員僅僅需要了解業務關系而不用關心內部細節,幫助開發者們實現自己複雜的業務邏輯。

開發人員可以利用Workflow封裝好的各種任務來動態或靜態組建自己的業務邏輯,如下圖所示,不同類型的任務都可以被串行、並行到一起:

除了各種創新設計以外,workflow還擁有比其他C++框架更友好的用戶體驗。過去許多企業自己搭建的服務器平台,在設計之初並未考慮到對多平台、多協議的支持,導致當新需求出現之時,開發者不得不通過自定義框架等方式來解決這個問題。Workflow原生實現了對http、redis、mysql和kafka等協議,可以直接作為這些協議的客戶端使用。並且在其基礎上開發了一套更加易用的Sogou RPC,實現與brpc和thrift互通,IDL支持protobuf和thrift,並且可以通過http+json或IDL實現跨語言,Sogou RPC項目也會在不久的將來開源。

Http Server性能實測:Sogou C++Workflow VS nginx、brpc

為了充分的體現出Workflow在性能上的優勢,搜狗也提供了Workflow和nginx、brpc兩個比較主流知名的系統一起做的http server性能對比,

測試環境:

這裏選取了最基本的測試場景:wrk或者wrk2跨機做client,單server,長連接,CPU:40核 E5-2630 v4 @ 2.20GHz,內存:192GB,網卡:25000Mb/s。nginx配置了auto的進程數(與核數一致),brpc配置了40個nthreads,workflow配置了16個poller線程和20個handler線程。

測試一:不同並發數對QPS的影響(越高越好)

結論:隨著壓測並發數的增加,server的QPS會隨著增高。可以看到Workflow無論是低並發數還是高並發數的情況下,QPS依然比nginx和brpc要高,尤其是並發數超過128的時候優勢更加明顯,Workfow對於小包基本能保證50w的QPS,說明內部對網絡資源的高並發調度做了很多優化。

測試二:不同數據大小對QPS的影響(越高越好)

結論:此處的返回包大小是http請求的body大小,隨著返回包增大,QPS會有所下降,我們希望QPS依然盡可能保持平穩不要下降得太快。Workflow在同並發下的性能依然比其他兩個系統要好,說明網絡收發和其他調用之間的調度協調得更好。

測試三:固定QPS下的延遲分布CDF圖(越左越好,越直越好)

結論:本測試由wrk2進行固定QPS的壓測,其中還有1%的長尾請求Outiler,長尾請求不計入結果,因為我們關注的是模擬真實情況下普通請求能否被及時處理。由於nginx在其他測試中性能略差一截,因此沒有對其進行CDF對比。可以看到在不同比例的分布中,Workflow的延遲更低、且最慢的那些(0.99到1.00之間)延遲增長也相對緩慢,說明Workflow對長尾處理更及時。

通過對比,可以發現Workflow的確在核心性能上有著自己獨到的優勢,對於很多開發者來說,往後也就多了一種選擇,遇到合適的應用場景,Workflow無疑會幫助開發者大大提升開發效率,確保項目成功。

開源核心技術,讓搜狗走向開發者生態的前沿

開源如此“硬核”的服務器引擎並不常見。許多科技公司都在花費極大精力對自己的產品、技術進行保密,核心算法更是秘而不宣。而近年來,搜狗卻走了一條與大眾相反的道路。不僅是Workflow,之前搜狗還相繼開源了機器閱讀理解工具SMRC、內部項目管理系統Cynthia在內的多項核心技術和工具。事實上,搜狗正是通過的不斷對核心技術的開源,遵守並理解開源社區文化,才能推動企業本身的技術進步,吸納更多優秀的開發者投入其中,為相關產品的後續發展持續輸送技術養料和創造力。

想要在日趨激烈的互聯網市場中獲得話語權,就必須積極的制定標准,始終站在開發者生態的前沿,建立可持續的競爭優勢,讓產品被更多用戶喜愛並使用。未來,在開源的道路上,搜狗還會不斷將相關先進技術持續對外開放,發揮自身領域的專業能力與力量,推動開源運動的進一步普及。

  大家在看    
聯想 戴爾 華為 浪潮全系列 服務器 存儲 工作

聯想 戴爾 華為 浪潮全系列 服務器 存儲 工作

我國網絡受美國“根服務器”限制,一旦對方關閉,會

我國網絡受美國“根服務器”限制,一旦對方關閉,會

《MIR4(傳奇4)》免費開放 服務器登陸問題遭

《MIR4(傳奇4)》免費開放 服務器登陸問題遭

11.11什麼值得買?有顏又能打的PowerEd

11.11什麼值得買?有顏又能打的PowerEd

1U GPU Server 服務器 新一代 GP

1U GPU Server 服務器 新一代 GP

永劫無間服務器炸了,玩家大罵rnm退錢

永劫無間服務器炸了,玩家大罵rnm退錢

服務器崩潰!LOL手遊由於太過火爆,將禁止加速器

服務器崩潰!LOL手遊由於太過火爆,將禁止加速器

數據庫存儲服務器怎樣購買?看完以下五點再做決定

數據庫存儲服務器怎樣購買?看完以下五點再做決定

美國心虛啥?對服務器發動攻擊,企圖破壞調查德堡實

美國心虛啥?對服務器發動攻擊,企圖破壞調查德堡實

魔獸世界懷舊服:服務器現狀,治療喜提史詩級BUF

魔獸世界懷舊服:服務器現狀,治療喜提史詩級BUF