天天看點

關于編寫高性能伺服器的資料彙總(Linux)

關于編寫高性能伺服器的資料彙總(Linux)

這端時間為了寫我自己的GSyncer,一直在研究分布式存儲和伺服器編寫這兩方面。

關于網絡程式設計,Stenvens先生的UNP3自然是必讀的,而且在30章還介紹了各種server模型。但是這本書畢竟有點年代了(如果stenvens還在世該多好),有些想法免不了的會顯得陳舊,而且因為整本書面向UNIX,一些Linux在網絡方面的新特性沒有涉及(比如epoll,零拷貝等)。是以光看書是不夠的,必要的時候還得借助google。

下面我就把這段時間搜集到的關于高效伺服器設計、編寫的一些資源彙總一下,友善跟我一樣需要的人

PS:所有資料都是基于Linux/UNIX的(畢竟沒幾個人會用windows來寫server)

文章:

1. The C10K Problem : 傳統的UNIX多程序模型在客戶超過10K(即1萬)的時候會遇到什麼問題,以及解決方案。   英文原版

2. 搜狗實驗室關于C10K的介紹:關于如何用epoll解決C10K問題

3. Scalable Network Programming:linux下高性能伺服器設計的聖經,媲美stenvens的UNP   英文原版    翻譯版

4. 如何編寫高性能伺服器:一個網易的遊戲架構師寫的,很全面。   上篇    下篇

5.  epoll相關資料整理:linux下實作高性能伺服器的必備利器

6. Linux中的零拷貝技術:linux核心如何避免資料在核心緩沖區于使用者緩沖區之間的拷貝進而減少CPU在傳輸資料時的計算量   上篇   下篇

7.  Linux下高性能的系統調用:sendfile,splice,tee

8.  sendfile函數詳解

9.  sendfile() 源碼:更好地了解sendfile是怎麼實作的。

相關BLOG:

1.  楊健的BLOG:此人對伺服器設計、各種IO模型很有研究

2. 那誰的技術部落格:花大力氣剖析了nginx和lighttpd的部分源碼,膜拜。nginx和lighttpd都是運動epoll實作高并發的典型執行個體,有能力看看源碼的話,能力會有質的提高。

轉載請注明 出處

繼續閱讀