muduo 網絡庫學習之路(一)


前提介紹:

  本人是一名大三學生,主要使用C++開發,興趣是高性能的服務器方面。

  網絡開發離不開網絡庫,所以今天開始學一個新的網絡庫,陳老師的muduo庫

  我參考的書籍就是陳老師自己關於muduo而編著這本《linux多線程服務器編程》

 

為什么選擇muduo網絡庫:

  我當初選擇muduo網絡庫有三個方面的原因,第一點就是muduo網絡庫的代碼完全開源,我們可以很輕松的通過看muduo的源碼來分析muduo在服務器開發中到底使用了什么技術

  其次muduo的框架並不是特別的復雜, 適合本人這種小白學習,並不是ACE那種特別龐大的網絡庫,不適合人來學習

  muduo的C++寫法十分符合最新的C++寫法,大部分使用了C++11的新特性,而不像很多其他開源C++網絡庫,里面還是會看到C的影子,更適合我們了解原本的C++而不被C的東西帶偏了

 

muduo的下載與安裝(本人使用ubuntu18.10)

  muduo的源碼在github上面就能找到,但是編譯和安裝,你需要安裝一些基礎工具

  首先安裝cmake:

    sudo apt-get install cmake

  muduo依賴於Boost:

    sudo apt-get install libboost-dev libboost-test-dev

  muduo還有三個非必須的依賴庫,example有些事例依賴於這些

    sudo apt-get install libcurl4-openssl-dev libc-ares-dev

    sudo apt-get install protobuf-compiler libprotobuf-dev

  muduo的編譯方法也很簡單(我用的muduo-2.0.0):

    tar zxf muduo-2.0.0.tar.gz

    cd muduo/

    ./build.sh -j2

  如果想使用的話,需要講編譯出來的文件夾里面的lib導入到你的/usr/lib文件夾中

  頭文件也可以放到/usr/include文件夾中,這樣你就可以使用<>導入頭文件

 

muduo的結構目錄:

  我們可以使用tree命令來查看這個網絡庫文件的架構

  如果沒有tree工具,可以在ubuntu上面直接使用apt安裝

  這里可以看見一個example,里面含有大量的測試事例,我們可以通過這些例子來充分學習muduo網絡庫的知識和用法


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM