開源!非凸Rust高效能日誌庫ftlog

非凸科技發表於2022-11-01


 


日誌是應用程式的重要組成部分,無論是服務端程式還是客戶端程式,都需要日誌作為錯誤輸出或業務記錄。非凸 Rust 高效能日誌庫 ftlog ,支援“受限寫入”以及“時間分割”等功能,具備顯著的效能優勢。

 

一、 ftlog 與普通日誌 有何不同

 

普通日誌庫受到磁碟 IO 和系統 P ipe 影響 單執行緒順序寫入單條速度大概要 2500ns SSD ),如果碰到 IO 抖動或者慢磁碟,日誌會是低 延遲 交易的主要瓶頸。 而非凸科技開源的 R ust 高效能日誌庫 ftlog v0.1.0 先把日誌 S end C hannel 再啟動後臺單獨執行緒 R ecv 且磁碟寫入,測試速度在 300ns 左右

 

值得注意的是 ftlog R ust log 生態不相容,建議刪除掉原來的日誌庫。特別是 讓兩個日誌庫匯出到同一個地方,否則兩個日誌生態會同時列印,導致日誌不可讀。

 

低延遲交易 要求整個交易鏈條上的所有環節 都儘量縮短時間間隔 而非凸日誌庫 ft log 在速度上更快 可實現更低的延遲

 

過去 金融證券領域的高效能一般指的是高吞吐量 滿足一定的延遲要求 但隨著機構交易佔比的逐漸提升 他們對延遲的要求也越來越高 對券商來說 誰能在延遲上取得最低 誰就可以掌握客戶

 

在開源上 不斷髮力

 

R ust 作為一門備受關注的新程式語言 它在保證記憶體安全的同時 還能實現不亞於 C /C++ 等語言的效能 非凸科技選擇 R ust 最主要的原因是 R ust 的高效能 高安全和可靠性與低延遲交易的核心需求高度匹配 在引擎層面 R ust 具有可靠的安全性和穩定性 在資料接入層面 R ust 足夠底層 可以做到更多其他語言難以做到的事

 

此外 對於企業級專案的開發 採用 R ust 更能保證程式的穩定性 對於高併發和低延遲部分 R ust 相關的成熟庫還不多 需要企業級的打磨才能更可靠 對此 非凸科技將在開源專案上不斷髮力 攻堅更多核心技術

 

做真正自研的技術 尤其是基礎軟體和核心底層技術 非凸科技希望透過開源 與廣大開發者 行業夥伴 客戶 攜手推進 R ust 在低延遲交易領域的開發 應用和落地 加速推動國產基礎軟體的繁榮和發展

 

非凸科技計劃在 ftlog v0.2.0 版本遷回官方 log 並加入 target 支援 歡迎大家的建議 交流和探討

 

程式碼開源地址


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70008913/viewspace-2921312/,如需轉載,請註明出處,否則將追究法律責任。

相關文章