這類問題之前也被問到很多次了,所以這次干脆整理一下,發(fā)個主題供同行們參考。
如果需要補充,也歡迎大家留言一起討論。 如果想真的做好性能測試,需要學(xué)習(xí)的東西還是比較多的。
簡單列一下吧。 1. 精通性能測試的基本概念,過程,方法論,了解性能工程;3. 扎實的計算機專業(yè)基礎(chǔ)知識,包括計算機組成原理、操作系統(tǒng)、數(shù)據(jù)庫原理、計算機網(wǎng)絡(luò)原理;4. 熟悉至少1個常用的數(shù)據(jù)庫產(chǎn)品,例如SQL Server或者 Oracle,能進行一般的數(shù)據(jù)庫管理操作,熟悉SQL腳本的使用,熟悉常用的數(shù)據(jù)調(diào)優(yōu)工具和常用的counter;5. 熟悉至少一個操作系統(tǒng)的原理,Windows或者Linux都可以,熟悉操作系統(tǒng)的體系架構(gòu)、操作系統(tǒng)的重要基礎(chǔ)概念,以及內(nèi)存管理、存儲/文件系統(tǒng)、驅(qū)動/硬件的管理、網(wǎng)絡(luò)協(xié)議的實現(xiàn)及構(gòu)成、性能的監(jiān)控方法和原理,熟悉常用的counter;6. 熟悉至少一個web server 產(chǎn)品,例如apache,了解一般的配置和常用的counter;7. 熟悉至少一個應(yīng)用服務(wù)器產(chǎn)品,例如tomcat,了解一般的配置,熟悉常用的服務(wù)器性能監(jiān)控方法和原理,熟悉常用的counter;8. 至少熟悉TCP/IP協(xié)議,熟悉HTTP協(xié)議,至少見過并了解三層、四層交換或者路由器的使用和配置。
了解常用的與網(wǎng)絡(luò)性能相關(guān)的counter;9. 了解一般的大型企業(yè)應(yīng)用的部署架構(gòu)和應(yīng)用架構(gòu);10. 了解知名大型web應(yīng)用、高并發(fā)量、高流量、實時響應(yīng)要求高的超大規(guī)模網(wǎng)站的架構(gòu)和優(yōu)化歷程;11. 熟悉統(tǒng)計學(xué)的基礎(chǔ)知識、常用分析方法以及實驗設(shè)計方法,了解數(shù)學(xué)建模相關(guān)的知識;12. 熟悉專屬行業(yè)的業(yè)務(wù)知識和用戶場景,例如電信行業(yè)的OSS系統(tǒng)所涉及的業(yè)務(wù)知識和用戶場景,證券交易系統(tǒng)所涉及的業(yè)務(wù)知識和用戶場景;13. 大量的實際性能測試及優(yōu)化經(jīng)驗;14. 積極的參與到各類圈子、社團的討論和交流、分享中。 暫時先想到了這么多,有興趣的朋友可以一起討論一下,相信每個人都有自己不同的經(jīng)歷和感想,可以跟其他人分享一下,提供參考。
另外,我之前也整理發(fā)布過不少性能測試方面的資料,從入門級的文章到 升級的必讀都有一些,有興趣可以參考。
性能測試的要求還是挺高的,性能測試要掌握的東西很多,首先一般性能測試需要借助一些工具,比如loadrunner,所以首先你得熟悉至少一種性能測試工具。然后就是性能測試工具中要用到的腳本,如果只靠工具本身所提供的錄制功能,錄制的腳本是肯定不能滿足一些特殊的需求,所以你還得學(xué)一種編程語言,loadrunner用的是C語言,如果這些都沒問題了,那么你還需要對要測試的系統(tǒng)相當(dāng)了解,并且具備一些服務(wù)器,數(shù)據(jù)庫及網(wǎng)絡(luò)方面的知識,這樣更能快速的找到系統(tǒng)的性能瓶頸及出現(xiàn)性能問題的原因,接下來你就可以執(zhí)行你的測試腳本了。剩下的就是模擬用戶情景,并對測試結(jié)果進行分析了,。當(dāng)然這只是一部分,更深的東西還需要自己去挖掘。
僅代表個人意見,
你好,首先很欣賞你的這種態(tài)度。我在TestBird 招聘新人的時候,也有很多小朋友覺得自己有多了解工具運用,有多熟練步驟過程,自我感覺很不錯。
其實,我卻想說,性能測試的重點不在性能測試工具的學(xué)習(xí)上。
當(dāng)然,你也通過分析系統(tǒng)的壓力點、LR錄制腳本,設(shè)置用戶,做壓力,分析結(jié)果,整理測試報告。完成了性能測試的整個過程。那么我說這個性能測試報告是有效的,但它不一定是有用的。
為什么呢?因為在性能測試報告中,在你所在的環(huán)境中,你是測出了這樣的效果。并未摻假,全部真實的記錄。
為什么說它不一定是有用的,你了解系統(tǒng)架構(gòu)么?知道數(shù)據(jù)庫、中間件、前端程序的運行方式和處理機制么?了解網(wǎng)絡(luò)協(xié)議么?了解操作系統(tǒng)么?熟悉開發(fā)系統(tǒng)的語言么,如java JVM的內(nèi)在機理知道么?這些都是系統(tǒng)運行的一部分,都在影響著系統(tǒng)的性能。如果不了解這些,你如何做出有價值的有參考意義的性能測試。
所以,學(xué)會這些性能測試工具很好,但是這僅僅是第一步。性能結(jié)果只是一些數(shù)據(jù)而已,知道你在做什么,為什么要做這些,做完后能給出有價值的東西,才是后面要慢慢修煉的。
性能測試是通過自動化的測試工具模擬多種正常、峰值以及異常負載條件來對系統(tǒng)的各項性能指標(biāo)進行測試。
負載測試和壓力測試都屬于性能測試,兩者可以結(jié)合進行。通過負載測試,確定在各種工作負載下系統(tǒng)的性能,目標(biāo)是測試當(dāng)負載逐漸增加時,系統(tǒng)各項性能指標(biāo)的變化情況。
壓力測試是通過確定一個系統(tǒng)的瓶頸或者不能接收的性能點,來獲得系統(tǒng)能提供的最大服務(wù)級別的測試。 性能測試類型包括負載測試,強度測試,容量測試等。
負載測試(Load Testing):負載測試是一種性能測試指數(shù)據(jù)在超負荷環(huán)境中運行,程序是否能夠承擔(dān)。負載測試強調(diào)的是系統(tǒng)能夠達到的峰值指標(biāo)。
強度測試(Stress Testing): 強度測試是一種性能測試,他在系統(tǒng)資源特別低的情況下軟件系統(tǒng)運行情況。強度測試強調(diào)的是系統(tǒng)在高負載情況下能夠穩(wěn)定工作,即在極端情況下系統(tǒng)的穩(wěn)定性。
容量測試(Volume Testing):確定系統(tǒng)可處理同時在線的最大用戶數(shù)。 如果想真的做好性能測試,需要學(xué)習(xí)的東西還是比較多的。
簡單列一下吧。 1. 精通性能測試的基本概念,過程,方法論,了解性能工程; 3. 扎實的計算機專業(yè)基礎(chǔ)知識,包括計算機組成原理、操作系統(tǒng)、數(shù)據(jù)庫原理、計算機網(wǎng)絡(luò)原理; 4. 熟悉至少1個常用的數(shù)據(jù)庫產(chǎn)品,例如SQL Server或者 Oracle,能進行一般的數(shù)據(jù)庫管理操作,熟悉SQL腳本的使用,熟悉常用的數(shù)據(jù)調(diào)優(yōu)工具和常用的counter; 5. 熟悉至少一個操作系統(tǒng)的原理,Windows或者Linux都可以,熟悉操作系統(tǒng)的體系架構(gòu)、操作系統(tǒng)的重要基礎(chǔ)概念,以及內(nèi)存管理、存儲/文件系統(tǒng)、驅(qū)動/硬件的管理、網(wǎng)絡(luò)協(xié)議的實現(xiàn)及構(gòu)成、性能的監(jiān)控方法和原理,熟悉常用的counter; 6. 熟悉至少一個web server 產(chǎn)品,例如apache,了解一般的配置和常用的counter; 7. 熟悉至少一個應(yīng)用服務(wù)器產(chǎn)品,例如tomcat,了解一般的配置,熟悉常用的服務(wù)器性能監(jiān)控方法和原理,熟悉常用的counter; 8. 至少熟悉TCP/IP協(xié)議,熟悉HTTP協(xié)議,至少見過并了解三層、四層交換或者路由器的使用和配置。
了解常用的與網(wǎng)絡(luò)性能相關(guān)的counter; 9. 了解一般的大型企業(yè)應(yīng)用的部署架構(gòu)和應(yīng)用架構(gòu); 10. 了解知名大型web應(yīng)用、高并發(fā)量、高流量、實時響應(yīng)要求高的超大規(guī)模網(wǎng)站的架構(gòu)和優(yōu)化歷程; 。展開 性能測試是通過自動化的測試工具模擬多種正常、峰值以及異常負載條件來對系統(tǒng)的各項性能指標(biāo)進行測試。
負載測試和壓力測試都屬于性能測試,兩者可以結(jié)合進行。通過負載測試,確定在各種工作負載下系統(tǒng)的性能,目標(biāo)是測試當(dāng)負載逐漸增加時,系統(tǒng)各項性能指標(biāo)的變化情況。
壓力測試是通過確定一個系統(tǒng)的瓶頸或者不能接收的性能點,來獲得系統(tǒng)能提供的最大服務(wù)級別的測試。 性能測試類型包括負載測試,強度測試,容量測試等。
負載測試(Load Testing):負載測試是一種性能測試指數(shù)據(jù)在超負荷環(huán)境中運行,程序是否能夠承擔(dān)。負載測試強調(diào)的是系統(tǒng)能夠達到的峰值指標(biāo)。
強度測試(Stress Testing): 強度測試是一種性能測試,他在系統(tǒng)資源特別低的情況下軟件系統(tǒng)運行情況。強度測試強調(diào)的是系統(tǒng)在高負載情況下能夠穩(wěn)定工作,即在極端情況下系統(tǒng)的穩(wěn)定性。
容量測試(Volume Testing):確定系統(tǒng)可處理同時在線的最大用戶數(shù)。 如果想真的做好性能測試,需要學(xué)習(xí)的東西還是比較多的。
簡單列一下吧。 1. 精通性能測試的基本概念,過程,方法論,了解性能工程; 3. 扎實的計算機專業(yè)基礎(chǔ)知識,包括計算機組成原理、操作系統(tǒng)、數(shù)據(jù)庫原理、計算機網(wǎng)絡(luò)原理; 4. 熟悉至少1個常用的數(shù)據(jù)庫產(chǎn)品,例如SQL Server或者 Oracle,能進行一般的數(shù)據(jù)庫管理操作,熟悉SQL腳本的使用,熟悉常用的數(shù)據(jù)調(diào)優(yōu)工具和常用的counter; 5. 熟悉至少一個操作系統(tǒng)的原理,Windows或者Linux都可以,熟悉操作系統(tǒng)的體系架構(gòu)、操作系統(tǒng)的重要基礎(chǔ)概念,以及內(nèi)存管理、存儲/文件系統(tǒng)、驅(qū)動/硬件的管理、網(wǎng)絡(luò)協(xié)議的實現(xiàn)及構(gòu)成、性能的監(jiān)控方法和原理,熟悉常用的counter; 6. 熟悉至少一個web server 產(chǎn)品,例如apache,了解一般的配置和常用的counter; 7. 熟悉至少一個應(yīng)用服務(wù)器產(chǎn)品,例如tomcat,了解一般的配置,熟悉常用的服務(wù)器性能監(jiān)控方法和原理,熟悉常用的counter; 8. 至少熟悉TCP/IP協(xié)議,熟悉HTTP協(xié)議,至少見過并了解三層、四層交換或者路由器的使用和配置。
了解常用的與網(wǎng)絡(luò)性能相關(guān)的counter; 9. 了解一般的大型企業(yè)應(yīng)用的部署架構(gòu)和應(yīng)用架構(gòu); 10. 了解知名大型web應(yīng)用、高并發(fā)量、高流量、實時響應(yīng)要求高的超大規(guī)模網(wǎng)站的架構(gòu)和優(yōu)化歷程; 11. 熟悉統(tǒng)計學(xué)的基礎(chǔ)知識、常用分析方法以及實驗設(shè)計方法,了解數(shù)學(xué)建模相關(guān)的知識; 12. 熟悉專屬行業(yè)的業(yè)務(wù)知識和用戶場景,例如電信行業(yè)的OSS系統(tǒng)所涉及的業(yè)務(wù)知識和用戶場景,證券交易系統(tǒng)所涉及的業(yè)務(wù)知識和用戶場景; 13. 大量的實際性能測試及優(yōu)化經(jīng)驗; 14. 積極的參與到各類圈子、社團的討論和交流、分享中。收起。
我學(xué)網(wǎng)絡(luò)的 用到的知識就只有一個 TCP/IP協(xié)議 但里面有包含很多的知識 有數(shù)據(jù)包的封裝 幀格式(可以做冒充數(shù)據(jù)包軟件) 3次握手 4次揮手(在這里面可以做很多關(guān)于建立連接的軟件哦 比如 迅雷) ARP(在ARP中可以做個ARP攻擊軟件 或P2P終結(jié)者 ARP防火墻 等等) IP(可做IP欺騙軟件) UDP/TCP(可做端口掃描軟件 端口攻擊軟件 比如攻擊端口80的WEB軟件) 在應(yīng)用層來說 有 公鑰私鑰密鑰軟件 加密軟件 認(rèn)證軟件 傳輸層 可做SSL軟件 比如你細心的話你會發(fā)現(xiàn)訪問銀行的時候瀏覽器會變成HTTPS 而不是HTTP了 還有很多 KERBEROS身法認(rèn)證 PGP 都涉及到網(wǎng)絡(luò)知識的 還有IP層的 IPSEC 現(xiàn)在很紅的技術(shù) 還有鏈路層的 L2TP 我也沒好好終結(jié)下 反正大體就這些了 哦 對了 還有流量控制 幀編號 我是學(xué)網(wǎng)絡(luò)的 所以談到的都是關(guān)于網(wǎng)絡(luò)安全的軟件和攻擊方法。
聲明:本網(wǎng)站尊重并保護知識產(chǎn)權(quán),根據(jù)《信息網(wǎng)絡(luò)傳播權(quán)保護條例》,如果我們轉(zhuǎn)載的作品侵犯了您的權(quán)利,請在一個月內(nèi)通知我們,我們會及時刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學(xué)習(xí)鳥. 頁面生成時間:4.686秒