Ramp-up Period(in seconds)說明
【1】決定多長時間啟動所有線程。若設(shè)置線程的數(shù)量為10,Ramp-up Period設(shè)置為100秒,那么Jmeter用100秒啟動完10個線程并運行。
Ramp-up需要設(shè)置一個相對合理的時間,若設(shè)置的太短,則有可能會導(dǎo)致服務(wù)器過載,造成一個不說因為平均訪問率過高的初始峰值。
Ramp-up若設(shè)置太長,則會降低服務(wù)器的負(fù)載,即有可能一些線程未啟動完成,初始啟動的線程已經(jīng)結(jié)束運行。
【2】決定建立一個線程所需要的時間。默認(rèn)值為0,即代表啟動測試的那一刻建立所有的線程并執(zhí)行,若線程數(shù)設(shè)置為N,Ramp-up設(shè)置為T,則表示每隔T/N秒建立一個線程。
調(diào)度器說明
【1】選中調(diào)度器則必須勾選“永遠(yuǎn)”,設(shè)置啟動時間和結(jié)束時間,測試啟動后判斷是否達(dá)到設(shè)置的啟動時間,沒有到達(dá)則等待直達(dá)到達(dá)后執(zhí)行測試,每個循環(huán)周期結(jié)束后判斷是否到達(dá)結(jié)束時間,若到達(dá)則停止執(zhí)行,若沒有到達(dá)則繼續(xù)執(zhí)行,直到到達(dá)結(jié)束時間停止執(zhí)行。
【2】設(shè)置啟動延遲則會覆蓋啟動時間,設(shè)置持續(xù)時間則會覆蓋結(jié)束時間。
如何設(shè)置一個合理的Ramp-up Second時間
能否確定一個準(zhǔn)確的Ramp-up Second需要遵守以下兩個原則:
1)取樣器的點擊率是否接近取樣器的平均點擊率,從而避免Ramp-up Second太小。(平均點擊率可以通過建立幾個測試線程跑后得出)
2)最后一個線程啟動的時候,第一個線程是否已經(jīng)結(jié)束,二者的時間盡可能的長,從而避免Ramp-up Second太大。(通過日志查看第一個線程的執(zhí)行情況)
具體案例計算說明:
線程數(shù):n
Ramp-up Second:T
循環(huán)次數(shù): a (延長線程運行時間)
平均點擊率(一個線程循環(huán)一次的時間): t
每個線程的運行時間: R = at
(為了確保最后一個線程啟動的時候,第一個線程還在運行,即 R>S,a>S/t)
最后一個線程啟動的時間: S = (T-T/N)


根據(jù)圖片設(shè)置的參數(shù)計算各個取值:
n = 10
T = 20
t = 0.1s
S = 18s
a = 200 (18/0.1=180)
R = 2s
從下邊的日志可以看到第一個線程運行了20s,即最后一個線程啟動的時候第一個線程仍在運行。

Synchronizing Timer(同步定時器)-集合點的使用
1、作用域
a.定時器在每個Sample之前執(zhí)行,而不是之后,無論定時器放在Sample之前還是之后。
b.當(dāng)執(zhí)行一個Sample的時候,所有當(dāng)前作用域內(nèi)的定時器都被執(zhí)行。
2.作用
類似于集合點的概念,阻塞線程,直到達(dá)到設(shè)置的線程數(shù)后一起釋放。
a.Number of Simulated Users to Group by:模擬用戶的數(shù)量,即指定同時釋放的線程數(shù)數(shù)量
b.Timeout in milliseconds:超時時間,即超時多少毫秒后同時釋放指定的線程數(shù)
設(shè)置沒秒集合5個然后釋放

