關(guān)閉

常見(jiàn)性能測試缺陷及優(yōu)化點(diǎn)

發(fā)表于:2024-9-29 09:06

字體: | 上一篇 | 下一篇 | 我要投稿

 作者:阿澤丶Tom    來(lái)源:CSDN

  性能測試缺陷分類(lèi)
  1. 硬件
  磁盤(pán)空間、CPU、IO讀寫(xiě)速率、內存
  磁盤(pán)空間:磁盤(pán)空間不足導致系統運行變慢,文件、日志等無(wú)法生成存放導致的性能瓶頸;
  CPU:CPU的核心功能是解釋計算機指令以及處理數據,性能主要體現在其運行程序的速度上。影響運行速度的性能指標包括工作頻率、Cache容量、指令系統和邏輯結構等參數;
  IO讀寫(xiě)速率:即input和output,輸入和輸出,主要考慮數據處理時(shí)的讀寫(xiě)速度,頁(yè)交換等情況;
  內存:所有的程序都是運行在內存中的,其作用是用于暫時(shí)存放CPU中的運算數據,以及與外部存儲器交換的數據,內存不足會(huì )限制程序的數據處理速度,因此這也是很重要的一項性能關(guān)注指標;
  2. 網(wǎng)絡(luò )
  帶寬、網(wǎng)絡(luò )波動(dòng)、CDN、延時(shí)、丟包
  帶寬:高并發(fā)情況下,如果帶寬不足,可能會(huì )導致網(wǎng)絡(luò )資源競爭,超時(shí)等情況;
  網(wǎng)絡(luò )波動(dòng):這里是從網(wǎng)絡(luò )的穩定性來(lái)描述,即性能測試的環(huán)境,需要一個(gè)穩定的網(wǎng)絡(luò )環(huán)境;
  CDN:即內容分發(fā)服務(wù),有時(shí)候不同的CDN策略也會(huì )影響到“用戶(hù)”感知到的系統性能表現;
  延時(shí):延時(shí)的值越大,對系統性能表現影響越大(比如格斗類(lèi)的PVP游戲),且性能測試的結果也存在更大的偏差;
  丟包:數據在網(wǎng)絡(luò )上是以數據包的形式傳輸的,如果丟包,則可能造成報錯或異常的情況;
  3. 應用
  JVM、代碼邏輯
  JVM
  堆內存分配:根據系統硬件條件來(lái)進(jìn)行合理的堆內存分配,一般來(lái)說(shuō)JVM的堆內存分配不要超過(guò)系統內存的25%較好;
  垃圾回收算法:JAVA的動(dòng)態(tài)垃圾回收機制,是基于不同的幾種回收算法來(lái)進(jìn)行的,根據具體的情況,選擇合適的垃圾回收策略;
  OOM:即內存溢出(out of memory),這個(gè)算是性能測試中很常見(jiàn)的一個(gè)問(wèn)題,通常是由于代碼問(wèn)題造成的內存泄漏、GC不夠徹底、內存被耗盡引起;
  代碼邏輯
  常見(jiàn)的情況有不合理的線(xiàn)程引用和內存分配;
  4. 配置
  版本、底層配置、參數配置
  版本:在性能測試過(guò)程中,一定要確保被測系統的版本和實(shí)際生產(chǎn)保持一致,否則由于版本不同帶來(lái)的些許差異可能會(huì )對性能測試帶來(lái)很大的偏差和影響;
  底層配置:涉及到操作系統、服務(wù)器等硬件的一些配置方式不合理,帶來(lái)的性能瓶頸;
  參數配置:系統架構設計中,各個(gè)不同的參數配置帶來(lái)的性能瓶頸;
  5. 數據庫
  索引、鎖、表空間、慢SQL
  索引:索引的存在就像一個(gè)標簽目錄一樣,在執行數據庫操作時(shí)提供更為快速的執行效率,減少磁盤(pán)IO操作和執行的數據庫系統時(shí)間;
  鎖:為了保證事務(wù)的原子性和隔離性,有了鎖的存在,但有時(shí)候由于某些原因造成的表鎖,也是性能瓶頸的一種表現;
  表空間:不合理的表空間設計,導致的數據庫性能問(wèn)題;
  慢SQL:慢SQL會(huì )導致數據庫操作時(shí)間變長(cháng),增加IO讀寫(xiě)以及引起一些列的資源競爭等問(wèn)題,常見(jiàn)的慢SQL原因如下(以MySQL為例):
  數據量:對同一張表來(lái)說(shuō),1W條數據和1000W條數據,對其進(jìn)行操作時(shí)的性能表現也是不同的,因此在性能測試時(shí)對于數據的正確性可用性,以及數據量也是需要重點(diǎn)關(guān)注的
  6. 中間件
  超時(shí)、線(xiàn)程池、緩存策略、最大連接數、通信實(shí)現方式、負載均衡策略
  超時(shí):設置合理的請求或響應超時(shí)時(shí)間,是很有必要的,這點(diǎn)要根據具體的業(yè)務(wù)場(chǎng)景和系統架構來(lái)考慮,具體的超時(shí)時(shí)間,建議進(jìn)行配置測試來(lái)設定;
  線(xiàn)程池:線(xiàn)程池配置太小,很容易被使用完,太大的話(huà)又浪費資源,合理的線(xiàn)程池,建議進(jìn)行配置測試來(lái)確定;
  緩存策略:緩存的優(yōu)點(diǎn)是減少請求響應過(guò)程中的傳輸時(shí)間,但有時(shí)候在高并發(fā)情況下,緩存很容易失效而導致緩存穿透,瞬間對服務(wù)端帶來(lái)很大的壓力;
  最大連接數:關(guān)于連接數,合理的連接數配置是很重要的,否則連接數太少容易導致隊列等待、超時(shí),連接數太多則浪費了系統資源;
  通信實(shí)現方式:同步(sync)和異步(Async);
  負載均衡策略:現在很多的系統都進(jìn)行了服務(wù)集群,隨之而來(lái)的就是負載均衡策略的實(shí)現,如果負載均衡不夠“均衡”,在大數量的沖擊下,容易導致某些服務(wù)的異;蛘邟炱。
  本文內容不用于商業(yè)目的,如涉及知識產(chǎn)權問(wèn)題,請權利人聯(lián)系51Testing小編(021-64471599-8017),我們將立即處理
《2024軟件測試行業(yè)從業(yè)人員調查問(wèn)卷》,您的見(jiàn)解,行業(yè)的聲音!

關(guān)注51Testing

聯(lián)系我們

快捷面板 站點(diǎn)地圖 聯(lián)系我們 廣告服務(wù) 關(guān)于我們 站長(cháng)統計 發(fā)展歷程

法律顧問(wèn):上海蘭迪律師事務(wù)所 項棋律師
版權所有 上海博為峰軟件技術(shù)股份有限公司 Copyright©51testing.com 2003-2024
投訴及意見(jiàn)反饋:webmaster@51testing.com; 業(yè)務(wù)聯(lián)系:service@51testing.com 021-64471599-8017

滬ICP備05003035號

滬公網(wǎng)安備 31010102002173號

久久无码人妻精品一区二_久久亚洲春色中文字幕_亚洲艳妇自拍视频_亚洲中文字幕乱码少妇饥渴