ЈМетер збирна анализа грешке протока извештаја

Jmeter Aggregate Report Throughput Error Analysis



Предговор: Недавно компанија има пројекат за тестирање отпорности на стрес. Након стрес тестирања утврђено је да тпс нису испунили очекивани циљ. Коначно, ручно сам израчунао тпс. Случајно је откривен проблем. Грешка протока у извештају ЈМетер била је велика!

Следећи извештај о обједињавању је демо који сам започео, а резултат је следећи:
слика



Према класичном теоријском моделу, проток ТПС или КПС треба да буде једнак броју истовремених нити подељеном просечним временом одзива:



тпс = Тема / АВГ (т) (број истовремених нити подељен просечним временом одзива)



Или тпс = ЦОУНТ (захтев) / Т (укупан број захтева подељен укупним временом захтева)

Погледајмо резиме резултат на горњој слици: просечно време одзива је 494мс, истовременост је 30, израчунати проток је 60,73 / с, проток који даје ЈМетер је 50,04, а разлика у грешкама је 10.

Који је разлог тако велике грешке? Након поновљених експеримената испитивања отпорности на стрес, открио сам да моја демонстрација користи правилније подударање да би верификовала повратну вредност одговора и разне тврдње, па је ли то обрада ЈМетер-а Да ли повратна вредност троши пуно времена и узрокује грешку у протоку израчуна?



Па хајде да то верификујемо кроз експеримент: прво напиши скрипту, користио сам скрипту са једним нитом и тражио да видим резултате 10 пута:

слика
Гледајући резултате, просечно време одзива је 217мс, једно истовремено, израчунати резултат је 4,61 / с, а резултат који даје ЈМетер је 4,6 / с, што је у складу са очекивањима.

Затим сам користио Гроови пост процесор, пустио да нит спава 500 мс, а затим и даље истовремено са једним навојем, тражећи резултате 10 пута:
слика
Гледајући резултат, просечно време одзива је 219мс, што је готово исто као и прво просечно време одзива од 217мс. Израчунати резултат је 4,57 / с, а пропусна вредност коју даје ЈМетер је 1,5 / с. Грешка у контрасту је огромна.

Па како долази проток од 1,5 / с? Чекање од 500мс додајемо на 219мс (овде треба додати 500 * 9/10), резултат израчуна је 1 / (219 + 500 * 9/10) = 1,49, што је у складу са 1,5 које даје ЈМетер, а која може у основи се може закључити Када ЈМетер израчунава проток, узима у обзир обраду машине.

Ако је просечно време одзива ЈМетера током читавог процеса захтева време од тренутка када се пошаље нормалан статистички захтев до тренутка када је одговор примљен, али недостаје пропусност, као основа користи се време целокупног навоја машине за прорачун пропусности.

Ако радите друге ствари у нити, као што су редовно издвајање, верификација параметара, додељивање променљивих итд., Проток ће се смањити. Једном када се време обраде локалне машине повећа, стварни притисак на серверу током теста притиска је мањи од конфигурисаног. Ако су перформансе машине превисоке или се на неким местима чека, добијени проток се може сматрати лажним подацима. Бавила.

Ако се утврди да је грешка велика, резултат се мора исправити како би се избегли лажни подаци.