高性能網絡庫 libGod-2.0.2-testing 發布
簡介
libGod是一個全異步+協程機制實現的網絡庫,適用于windows、linux、bsd等多種平臺。內部使用IOCP、epoll、
kqueue等系統調用管理事件機制,同時巧妙的利用協程,將復雜的異步邏輯轉換為同步,使用起來非常簡單。libGod致力于為游戲、云計算等高并發服
務器提供一個高性能而且簡單易用的底層,封裝了多線程,IO,內存緩沖區等復雜邏輯,上層應用只要專注寫邏輯,使用libGod很容易就可以開發出一個高
性能高并發的服務器。
從2.0版本開始,有兩個大的變化:
- 為了加快開發進度,暫時去除了linux以外平臺的支持,專注于linux平臺的開發。
- 分 出了單線程和多線程版本。我們專門針對單線程進行了特殊優化,調度性能比多線程版本高。單線程版還有一個很大的優勢就是邏輯更簡單了。現在很多系統的線程 是搶占式的調度,訪問共享資源就免不了加鎖。協程是協作式調度,大部分情況下是不需要加鎖的。而了解我們項目的應該都知道,libGod整個框架是基于協 程驅動的。libGod多線程版雖然也是基于協程,但因為夾雜著多線程的搶占式調度,所以處處還是需要加鎖。而單線程版就是單純的協作式調度,所以絕大部 分情況可以不用加鎖。
經過幾天的忙乎,2.0.2-testing版閃亮登場。
內容更新:
-
修復io_scheduler的概率性宕機問題。
-
統一定時器時間類型。
-
增加.zip、.sh兩種打包方式。
以后大概每周出一個測試版,遇法定節假日推后。
項目地址:http://www.libgod.com/
本文由用戶 p34f 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!