服務器併發處理能力

讀了郭欣的《構建高性能站點指南》,收穫頗豐,這裏算是一點讀後感、總結+小體驗,向作者致敬

這篇講的是服務器的併發處理能力,從哪幾點來評測服務器的併發處理能力呢?吞吐率、CPU併發處理能力、系統調用、內存分配、持久連接、I/O模型、服務器併發策略,這裏的每一點都是非常值得深究的

1. 吞吐率

定義:web服務器單位時間內處理的請求個數

工具:apache的ab壓力測試工具,詳情見http://blog.csdn.net/fly_heart_yuan/article/details/6970509

分析:壓力測試中,不斷增大併發數,從1開始到1000,我們會得到一系列結果,在結果中,應重點關注四個數據:併發用戶數、吞吐率、請求等待時間、請求處理時間,後三項的時間都會隨着併發用戶數的增多而發生變化,或增或減,我們會在這四個數據之間權衡,找到一個平衡點,具體這個平衡點在哪裏,根據自己的情況去確定

2. CPU併發計算

定義:無

工具:top命令

分析:

參考:http://www.slideshare.net/myw58/jiangjiangwei

3  系統調用

工具:strace 命令

strace命令可以跟蹤某一個進程,列出該進程所有調用的系統函數

做這個實驗的時候,爲了方便,我把php-cgi的數目配成一個,使用 ps aux|grep php-cgi 可以查看到php-cgi的進程號,後使用strace -p XXX(進程號)可以跟蹤該進程

4. 內存分配


5.  持久連接 

建立一次TCP鏈接的操作是很一項不小的開銷,所以鏈接的次數越少,越有利於性能的提升,適用於密集型圖片或網頁等小數據請求處理

6. I/O模型

7. 服務器併發策略



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章