KonsanNet 網絡通信框架 V0.8 更新

簡述

      前些天覺得該庫名稱太長,改了一個簡單的名稱KonsanNet。

      本版本已經基本完成大部分功能,已經可以用於常見的場景,此後先暫停一段時間,最近事情比較多,難有閒暇。

源碼地址

       GitHub:https://github.com/KonsanAlide/KonsanNet

 

更新內容

增加任務池CXTask

       增加任務的池化運行,可以把耗時長的運算放入任務池中運行,比如壓縮,比如加密,比如建立和第三方的TCP連接,比如遠程數據庫訪問,等等。

增加線程池

       增加線程池,用於統一管理線程,避免反覆創建銷燬。也以用於後續動態地增減各層的線程的運行數量,以在線的調整服務端的性能。

 

增加狀態機邏輯到RPC對象

       增加狀態機邏輯到RPC對象中,用於異步的訪問遠程或者第三方的對象,以正確的異步接收遠程請求的回饋並繼續下一步。

 

增加RPC消息格式化輸出和統計

  1. 把RPC對象的消息處理後把消息格式化輸出到journal 日誌
  2. 統計消息處理耗時,輸出到log日誌

 

壓縮加密相關

       使用開源庫cryptocpp和snappy進行RSA、Blowfish加密,和進行snappy、gzip、zlib等壓縮。測試下來,發現RSA耗時非常久,壓縮500KB的數據就要十幾秒,只適用用於關鍵性數據的傳輸。有時間再測試下其他的非對稱加密算法吧。

 

增加RPC客戶端

        在服務端增加連接池,增加RPC客戶端,用於異步訪問遠程的RPC對象。鏈接池主要是用於對向遠程進程發起的TCP連接的管理和複用,特別是針對單請求非持續性的遠程對象的訪問。同時用於控制對遠程進程的連接數管理。

 

其它

後面剩餘一些功能要慢些增加:

  1. 增加服務端的各模塊參數外部配置和熱加載
  2. 增加像protocol buf那樣的便捷的產生包結構和測試的庫。
  3. 增加消息處理超時處理。
  4. 增加服務端的RPC客戶端的請求耗時統計和輸出。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章