一般來說,服務(wù)器性能主要由三部分決定:
1.服務(wù)器的硬件配置
2.服務(wù)器操作系統(tǒng)
3.應(yīng)用程序
服務(wù)器硬件配置主要有:
圖 1.0 服務(wù)器集群
(1).CPU
一般來說CPU的數(shù)量越多,主頻越高,那么服務(wù)器的性能也就會越好。在實際測試過程中,如果在大壓力下持續(xù)觀察CPU的使用率很低,那么CPU的資源基本上是可以滿足服務(wù)器要求的。這樣的情況其實是有點浪費CPU資源的,比較理想的情況是壓力不大的時候CPU利用率比較低,壓力上來之后CPU利用率保持在60%-70%。大部分的CPU在同一時間內(nèi)只能運行一個線程,但是超線程的處理器可以在同一個時間運行多個線程,我們可以利用處理前超線程特性提高系統(tǒng)性能。雖然采用超線程技術(shù)能同時執(zhí)行兩個線程,但它并不象兩個真正的CPU那樣,每個CPU都具有獨立的資源。當(dāng)兩個線程都同時需要某一個資源時,其中一個要暫時停止,并讓出資源,直到這些資源閑置后才能繼續(xù)。因此超線程的性能并不等于兩顆CPU的性能。
(2).RAM
內(nèi)存的大小也是影響服務(wù)器性能的一個重要因素。內(nèi)存太小,系統(tǒng)進(jìn)程要被阻塞,應(yīng)用程序會變得緩慢,甚至是失去響應(yīng);如果太大的話,也是造成一種浪費。Linux系統(tǒng)中采用物理內(nèi)存和虛擬內(nèi)存兩種方式,使用虛擬內(nèi)存可以緩解物理內(nèi)存的不足,但是如果占用過多的虛擬內(nèi)存的話,應(yīng)用程序的性能會明顯的下降。
(3).網(wǎng)絡(luò)寬帶
網(wǎng)絡(luò)帶寬的大小限制了客戶端與服務(wù)器交互的流量,相對其他硬件資源,網(wǎng)絡(luò)帶寬在價格上更貴。這需要我們合理預(yù)估服務(wù)器的可服務(wù)器能力,需要占用的帶寬資源。
(4).硬盤
以前硬盤多是機械方式運作的,主要體現(xiàn)在硬盤讀寫前尋找磁道的過程。硬盤自帶的讀寫緩存大小,對于硬盤讀寫速度至關(guān)重要。讀寫速度快的硬盤,通常都帶有較大的讀寫緩存。硬盤的尋道過程是機械方式,決定了其隨機讀寫速度將明顯低于順序讀寫。在我們做系統(tǒng)設(shè)計和實現(xiàn)時,需要考慮到硬盤的這一特性。
操作系統(tǒng):
圖2 操作系統(tǒng)
(1).操作系統(tǒng)
當(dāng)前主流的服務(wù)器操作系統(tǒng)則主要分為:Windows server、UNIX、Linux、NetWare這四大陣容。不同的系統(tǒng)有不同的特點,要根據(jù)情況來判斷
Windows server是用戶群體最大的服務(wù)器系統(tǒng),不得不多做介紹。旗下又分為:Winnt4.0、Win2000、Win2003、Win2008、Win2012。
Win2000則是Winnt原有完整的內(nèi)核上進(jìn)行開發(fā)的,對多任務(wù)的處理能力有了大幅的提升,管理以及其他功能更加全面,但是系統(tǒng)的穩(wěn)定性和安全性被削弱了。微軟也停止了對win2000的銷售和升級服務(wù);win2003在操作的易用性上進(jìn)行了升級,安全性是目前所有的windows server系統(tǒng)中最高的,線程處理能力、硬件的支持、管理能力都有了大幅的提升,是目前服務(wù)器操作系統(tǒng)中主流的操作系統(tǒng)之一。不過由于更多功能的加入,使得win2003的處理能力有所下降。win2008添加了一些特性和策略,以及多了server 2008 r2b版本,運行速度有所加強,但是穩(wěn)定性有所欠佳。也是主流系統(tǒng)之一。最后就是win2012,目前微服務(wù)器操作系統(tǒng)中最高的版本,同時也有r2版本,全面的升級,對應(yīng)win8內(nèi)核優(yōu)化而來,但是,對一些老牌軟件應(yīng)用的兼容性,以及穩(wěn)定性還是欠佳的。如果說 Windows server是為單用戶設(shè)計的,那么UNIX則是為多用戶而生的。支持大型文件系統(tǒng)和數(shù)據(jù)庫,系統(tǒng)的安全性、穩(wěn)定性、以及引用軟件有著Windows server無法比擬的優(yōu)勢。但是操作界面欠人性化,相關(guān)操作管理技未得到推廣,使得雇傭維護(hù)人員的成本非常高。
Linux是基于UNIX系統(tǒng)開發(fā)修補而來,免費、開源、使得其穩(wěn)定性、安全性、兼容性非常高,對于商業(yè)服務(wù)器是首選。但是僅憑開發(fā)的源代碼,使得很多服務(wù)器管理人員對其喜愛有加。
NetWare對服務(wù)器硬件的要求極低,而且對于網(wǎng)絡(luò)的組件也有著先天的優(yōu)勢,能夠支持無盤工作站,也能支持非常之多游戲軟件的開發(fā)環(huán)境搭建,還能節(jié)省很多成本,常用戶網(wǎng)絡(luò)教學(xué)、游戲大廳、金融系統(tǒng)等。但是同樣是需要手工敲入命令來實現(xiàn)操作指令的。而且系統(tǒng)多年來也沒有更深層次的更新,使得部分軟件的支持與其他新型應(yīng)用的兼容性有所欠佳。
(2).操作系統(tǒng)選型原則
一般來說,個人用戶或者實驗用戶,選用windows操作系統(tǒng)比較普遍,人性化的界面設(shè)計使得操作簡單,而且網(wǎng)上能找到大量的資料來參考。商業(yè)或者對服務(wù)器性能要求較高場合一般使用Linux或者UNIX.
應(yīng)用程序本身:
對于應(yīng)用程序本身的設(shè)計來說,只要選用合適的數(shù)據(jù)結(jié)構(gòu)和內(nèi)存操作方式,那么至少在性能上差距不是很大,避免對常用內(nèi)存數(shù)據(jù)的多次創(chuàng)建和釋放。也可增加服務(wù)器的性能。