linux作為一種免費的開源作業系統,正越來越受到人們的重視。linux系統的Web服務器效能如何測試呢?下面跟yjbys小編一起來看看吧!
一、基於linux的Web伺服器的重要性
linux作為一種免費的開源作業系統,正越來越受到人們的重視。隨著穩定的Linux 2.4核心釋出日期的臨近和Intel IA-64構架的推出,Linux在伺服器作業系統市場所佔的份額會繼續擴大,那麼基於Linux的應用也就會日益豐富。而在Internet時代,作業系統最廣闊的市場空間就是Web伺服器,正是遍佈全球的千千萬萬的Web伺服器才構成了因特網資訊資源的基礎,而Web伺服器效能的優劣直接關係到人們對資訊資源的利用效率,因此對Web伺服器效能的測試就顯得非常必要。
二、以執行在linux平臺的Apache伺服器為例,談Web伺服器的效能測試
Web伺服器的效能不僅僅和Web伺服器軟體本身有關,它還和伺服器硬體設計水平和伺服器 作業系統有很大的關係,因此Web伺服器效能測試是一項綜合性能的測試。目前在全球Web伺服器軟體市場上Apache伺服器佔到了60%以上的市場份額。下面就以執行在linux平臺上的Apache伺服器為例,談談如何進行Web伺服器效能的測試。
伺服器效能測試的工具
Web伺服器的效能測試工具很多,比較著名的有WebStone和WebBench,這兩個工具雖然實現的方法有所不同,但是測試指標是相同的,即都是測試每秒最大請求響應數和資料吞吐量。
he伺服器支援SSL協議的配置
隨著 電子商務的發展,webBench2.0還增加了電子商務測試集,這就需要Apache伺服器支援SSL(Security Socket Layer)。但是Apache伺服器在預設情況下並沒有提供對SSL的有效支援,因此要想利用WebBench測試Apache伺服器的電子商務效能,就需要重新配置Apache伺服器使之支援SSL。下面就以Redhat linux6.1,Apache1.3.9為平臺講一下具體的配置方法:
1)下載Apache1.3.9
()
Openssl-0.9.5
()
Mode-ssl-2.6.0
()
2)解壓縮:
# tar zxvf apache*
# tar zxvf openssl*
# tar zxvf modssl*
3)更改perl可執行檔案的目錄
# cd /openssl*/util
把檔案開始的#!/usr/local/bin/perl改成現在作業系統中perl的目錄,在RedHat linux中是#!/usr/bin/perl。然後執行./ /usr/bin即可。
4)編譯配置
# cd openssl-0.9.x
# sh config
-fPIC
# make
# make test
# cd mod-ssl*
# ./configure
--with-apache=/apache_1.3.12 --with-ssl=/openssl-0.9.5
--prefix=/apache_1.3.12
# cd apache_1.3.12
# make
# make certificate
# make install
在make certificate時會有很多的選項,主要的是選擇加密演算法,包括RSA(它是由R. Rivest、A. Shamir和L. Adleman三位教授於1977年提出的公開金鑰密碼系統,它的取名就是來自於這三位發明者的姓的第一個字母)和DSA(Digital Signature Algorithm),這時選擇RSA即可,接下來會有包括國家名,單位名,認證有效期等等需要輸入的資訊。這些步驟完成之後,會產生一個和檔案,注意檔案一定要保密,接下來就是輸入連線使用者名稱和口令。
以上工作全部結束後,會生成三個伺服器認證檔案,他們分別是:
/apache*/conf/
/apache*/conf/
/apache*/conf/
# cd /mod-ssl*
# ./configure
--with-apache=/apache_1.3.12
--with-crt =/apache_1.3.12/conf/
--with-key=/apache_1.3.12/conf/
# cd /apache*
# SSL-BASE=/openssl*
./configure
--enable-module=ssl
--prefix=/apache_1.3.12
# make
# make certificate
# make install
3.測試Web伺服器的吞吐量和每秒最大請求響應數
全部編譯完成之後的apache就可以支援ssl,但是要想進行WebBench的測試,還需要配置/apache/conf/檔案,最關鍵的是要開啟ssl的監聽埠443,並且把documentroot和Webbench3.0所在的目錄對應起來。然後在/apache*/bin/下執行apachectl startssl執行電子商務子集測試,執行 apachectl start執行普通的測試,通過控制檯和客戶端WebBench軟體的配合就可以測試出當前系統配置下Web伺服器的吞吐量和每秒最大請求響應數。
三、WEB伺服器測試結果分析
技術與伺服器叢集技術
SMP(Symmetric MultiProcessing),即:對稱多處理。指在一個計算機上彙集了一組處理器(多CPU)。它們共享記憶體及匯流排結構,系統將處理任務佇列對稱地分佈於多個CPU上,從而極大地提高了系統的資料處理能力。Windows2000採用了SMP,一般情況下,雙CPU的伺服器比單CPU伺服器效能提高70%左右。而linux系統對於SMP技術並不敏感,根據測試結果顯示,使用雙PentiumIII800CPU比單CPU的Web伺服器效能沒有顯著的提高。
與SMP相比,叢集技術更易於實現,它開發週期短,而且造價低。雖然節點之間資料傳輸的速度比SMP匯流排低,但是它的可擴充套件性遠遠超過了 SMP,在一個叢集中可以很輕鬆地支援256個CPU。同時,由於各節點之間使用了鬆散耦合的方式連線,可以在系統正在執行的情況下方便地更換或新增節點,因此它的可靠性與可擴充套件性也優於目前的SMP技術,但是同時我們應該注意到的是叢集技術的主要侷限在網路的瓶頸上,對於關鍵的節點甚至使用千兆網,這是一般使用者無法承受的。因此在選擇上應該考慮到這個問題。