You are here

System Performance Issue

前一陣子在執行某外商銀交易系統,在使用者測試時,發現效能不如預期,新系統效能竟然不如舊系統,其舊系統還是高齡十數年的AS/400, 新系統則是採用Web Base 3-Tiers架構,硬體採用R6 Server,原期望將舊系統移轉至新系統,系統效能即使無法大幅提昇,至少也能與舊系統效能打平,當使用者抱持高期待的心情進行測試時,卻發現事與願違,究其原因,整理如下幾點,與大家分享。

1. 客觀的測量方式
Client端的反應速度,有部份是隨著使用者當下的心情來決定的,可能因為事多、人煩、心情不好,導致系統用起來感覺就是比較慢,因此在讓使用者描述系統效能快慢時,需有一套客觀測量基準,例如按下執行鈕到顯示執行結果所需要的時間,顯示查詢資料的筆數與時間,產生所需要的報表其查詢條件與產生時間等,以避免系統效能的結果是建立在使用者的主觀判斷上。

2. 環境基準不一致
使用者平時是在營運環境使用系統,然而在進行UAT時使用的是測試環境的系統,測試環境硬體規格、網路環境,與配套相關的外圍系統有可能效能遠不如營運環境,例如營運環境採用的是SAN Disk, 使用的是Gigabit Ethernet 內部網路,而測試環境使用的是Internal Disk ,連結的系統在異地環境或他國,必需透過VPN連到外網,累積下來看似新系統的硬體規格較高(通常使用者只看CPU, RAM) 然而累積下來新系統可能沒有太多效能上優勢。因此需解此這些環境差異造成測試系統的效能損失,據此評估與營運環境差距比例,以指出適當效能指標為何。

3. 硬體效能的盲點
在現行硬體效能CPU與 RAM的效能均有指數成長,惟有Disk IO採線性成長,以致Disk IO成為整個系統中的效能瓶頸,然而Disk IO在採購時,其效能指標,常是最資訊不透明、計算最複雜,卻也是最常被忽略,Disk IO效能差異,受硬碟本身規格(快取大小, 碟片資料儲存密度, 資料存取時間)、傳輸介面(IDE, SCSI, SATA, SAS),採用RAID模式(RAID0, 1, 3, 5),RAID卡效能等影響,在採購前難有直觀數字參考,容易造成採購決策失誤。

4. 排除影響其它效能原因
考慮到電腦硬體採購與後續管理成本,資訊人員皆想儘可能簡化硬體數量(尤其是在測試環境),近年虛擬分割技術膨勃發展,多個系統透過邏輯切割共用一套硬體常常可見,雖然理論上邏輯切割可以系統資源(CPU, RAM)良好的分配給多個系統,但可能因為Database是共同同一台機器(這很常見) ,或是分享同一個SAN Disk,甚至使用到同一個Internal Disk,造成系統資源並未做到很好的區隔,而產生了交互影響。

5. 評估安控機制造成的效能影響
資訊安全已然是現代企業運作顯學,除了防止電腦病毒、後門程式、SQL Injection 等惡意程式侵害外,更重要的防止資料外洩給未授權人員。故選擇透過安控軟體、通訊加密軟體來提昇系統環境的安全性,不失為一資訊安全提昇良好方案,然而這些軟體對系統效能可能是有些損耗,故必需將其包含到整個系統效能來考量。

歸納在進行System Performance Tuning(效能校調),有下列步驟可讓執行人員循序漸進找到問題、解決問題,條列如下與大家共享。

1.發現:尋找與收集效能不良的現象
2.探索:針對效能不良現象,尋找可能發生原因
3.觀察:建立各種指標,透過人工記錄或工具觀察這些指標的變化
4.提案:依據觀察結果,提出可能改善方案
5.執行:執行提案
6.確認:確認是否改善
7.追踪:持續觀查各項指標是否穩定在預期範圍內

不知道大家在實務上常遇到System Performance Issue有那些,歡迎大家分享,討論.

Comments

Hi 大家
除了硬體的限制下,個人覺的還有下述幾項也會有所影響
1. 作業系統的參數設定
2. Database 資料庫的參數設定
3. 所使用的軟體平台參數設定(如:WebSphere 系列平台)
4. 應用程式的寫法,此點往往是整個系統校能影響最大者,不過一般專案在碰
到效能時都會先加強硬體部份,其次才是考量軟體的部份

謝謝

一般都先改軟體才改硬體吧,因為價格關係。

這是當系統能明確的指出是軟體寫法所造成拖慢 System Performance的時後(如SQL 寫法)才會很直接去修改軟體的做法

一般在進行專案時,除非很明顯示指出是軟體寫法問題,才會考慮修改軟體,因為通常在進行Performance Test, 已到專案的尾聲,這時候通常是專案最緊張的時期,此時任何對軟體的修改都是茲事體大(尤其是交易的系統),故除非有非常明顯的跡象指出是軟體問題,否則第一步會先從硬體與系統設定著手.

The issue is expectation is wrong.

對於應用程式的寫法這個觀點,的確應用程式修改的考量會先於硬體
謝謝大家指教

Add new comment

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.
CAPTCHA
情非得已,網路蟑螂橫行,必須確認您是友善的訪客,麻煩之處,尚請見諒
Fill in the blank.