c/c++ 比較好的開源框架

做者:EZLippi
連接:https://www.zhihu.com/question/19823234/answer/31632919
來源:知乎
著做權歸做者全部。商業轉載請聯繫做者得到受權,非商業轉載請註明出處。

有一些比較好的開源框架能夠學習,好比:
  • Webbench
Webbench是一個在linux下使用的很是簡單的網站壓測工具。它使用fork()模擬多個客戶端同時訪問咱們設定的URL,測試網站在壓力下工做的性能,最多能夠模擬3萬個併發鏈接去測試網站的負載能力。Webbench使用C語言編寫, 代碼實在太簡潔,源碼加起來不到600行。下載連接: LippiOuYang/WebBench · GitHub

  • Tinyhttpd
Tinyhttpd是一個超輕量型Http Server,使用C語言開發,所有代碼只有502行(包括註釋),附帶一個簡單的Client,能夠經過閱讀這段代碼理解一個 Http Server 的本質。下載連接連接: LippiOuYang/Tinyhttpd · GitHub
  • cJSON

cJSON是C語言中的一個JSON編解碼器,很是輕量級,C文件只有500多行,速度也很是理想。html

cJSON也存在幾個弱點,雖然功能不是很是強大,但cJSON的小身板和速度是最值得讚揚的。其代碼被很是好地維護着,結構也簡單易懂,能夠做爲一個很是好的C語言項目進行學習。linux

項目主頁:cJSON | SourceForge.netgit

  • Libev

libev是一個開源的事件驅動庫,基於epoll,kqueue等OS提供的基礎設施。其以高效出名,它能夠將IO事件,定時器,和信號統一塊兒來,統一放在事件處理這一套框架下處理。基於Reactor模式,效率較高,而且代碼精簡(4.15版本8000多行),是學習事件驅動編程的很好的資源。github

下載連接:redis

  • Memcached

Memcached 是一個高性能的分佈式內存對象緩存系統,用於動態Web應用以減輕數據庫負載。它經過在內存中緩存數據和對象來減小讀取數據庫的次數,從而提供動態數據庫驅動網站的速度。Memcached 基於一個存儲鍵/值對的 hashmap。Memcached-1.4.7的代碼量仍是能夠接受的,只有10K行左右。sql

下載地址:memcached - a distributed memory object caching system數據庫

  • SQLite

SQLite是一個開源的嵌入式關係數據庫,實現自包容、零配置、支持事務的SQL數據庫引擎。 其特色是高度便攜、使用方便、結構緊湊、高效、可靠。足夠小,大體3萬行C代碼,250K。編程

下載地址:SQLite Home Pagejson

  • redis
redis是高性能鍵值對存儲系統 antirez/redis · GitHub

查看C++框架整理:值得推薦的C/C++框架和庫緩存

相關文章
相關標籤/搜索