測(cè)試結(jié)果分析完成后,即可進(jìn)行性能問(wèn)題確定與優(yōu)化操作。通常情況下,系統(tǒng)出現(xiàn)性能問(wèn)題的表象特征有以下幾種:

1.響應(yīng)時(shí)間平穩(wěn)但較長(zhǎng)

測(cè)試一開(kāi)始,響應(yīng)時(shí)間就很長(zhǎng),即使減少線程數(shù)量,減少負(fù)載,場(chǎng)景快執(zhí)行結(jié)束,響應(yīng)時(shí)間仍然很長(zhǎng)。

2.響應(yīng)時(shí)間逐步變長(zhǎng)

測(cè)試過(guò)程中,負(fù)載不變,但運(yùn)行時(shí)間越長(zhǎng),響應(yīng)時(shí)間越長(zhǎng),直至出現(xiàn)很多錯(cuò)誤。

3.響應(yīng)時(shí)間隨著負(fù)載變化而變化

負(fù)載增加,響應(yīng)時(shí)間變長(zhǎng),負(fù)載減少,響應(yīng)時(shí)間下降,資源使用率也下降。

4.數(shù)據(jù)積累導(dǎo)致鎖定

起初運(yùn)行正常,但數(shù)據(jù)量積攢到一定量,立刻出現(xiàn)錯(cuò)誤,無(wú)法消除,只能重啟系統(tǒng)。

5.穩(wěn)定性差

特定場(chǎng)景或運(yùn)行周期很長(zhǎng)以后,突然出現(xiàn)錯(cuò)誤,系統(tǒng)運(yùn)行緩慢。
 

Jmeter性能測(cè)試系列

以上幾種是筆者在性能測(cè)試過(guò)程中碰到的幾種性能有問(wèn)題的特征。一旦出現(xiàn)上述幾種情況,基本可以判定系統(tǒng)存在性能問(wèn)題。接下來(lái)即是針對(duì)具體問(wèn)題具體分析,從而發(fā)現(xiàn)問(wèn)題并提出解決辦法。

響應(yīng)時(shí)間長(zhǎng),系統(tǒng)越來(lái)越慢,出現(xiàn)業(yè)務(wù)錯(cuò)誤,通常由以下幾種情況造成:

(1)物理內(nèi)存資源不足

(2)內(nèi)存泄漏

(3)資源爭(zhēng)用

(4)外部系統(tǒng)交互

(5)業(yè)務(wù)失敗時(shí)頻繁重試,無(wú)終止?fàn)顟B(tài)

(6)中間件配置不合理

(7)數(shù)據(jù)庫(kù)連接設(shè)置不合理

(8)進(jìn)程/線程設(shè)計(jì)錯(cuò)誤

分析過(guò)程中,假設(shè)每一個(gè)猜想是正確的,然后逐一排除。

結(jié)合上述問(wèn)題,本次性能測(cè)試過(guò)程中隨機(jī)瀏覽購(gòu)買(mǎi)商品時(shí),出現(xiàn)了填寫(xiě)收貨地址時(shí)間變長(zhǎng)、數(shù)據(jù)庫(kù)錯(cuò)誤等問(wèn)題,某些指標(biāo)未能滿足預(yù)先設(shè)定,故本次性能測(cè)試不通過(guò)。

性能測(cè)試是個(gè)嚴(yán)謹(jǐn)?shù)耐评磉^(guò)程,一切以數(shù)據(jù)說(shuō)話,在沒(méi)有明確證據(jù)證明系統(tǒng)存在性能問(wèn)題的時(shí)候,千萬(wàn)不可隨意調(diào)整代碼、配置、甚至是架構(gòu)。因?yàn)橐坏┱{(diào)整了,就必須重新開(kāi)展功能及性能回歸測(cè)試,而且可能影響現(xiàn)網(wǎng)業(yè)務(wù)。

性能調(diào)優(yōu)后,需做功能及性能的回歸測(cè)試,從而保證調(diào)優(yōu)活動(dòng)正確完成,且未造成額外的影響。