JMeter Timer: Costante, Gaussiano, Casuale uniforme

โšก Riepilogo intelligente

JMeter I timer introducono un ritardo controllato tra le richieste, in modo che un thread si metta in pausa come un utente reale, prevenendo il sovraccarico del server e riproducendo tempi di riflessione realistici per i tipi Constant, Gaussian, Uniform e basati su script.

  • โธ๏ธ Timer costante: Aggiunge lo stesso ritardo fisso a ogni richiesta.
  • ๐Ÿ”” Timer casuale gaussiano: Ritardi secondo una curva di distribuzione normale.
  • ๐Ÿ“ Timer casuale uniforme: Ritardi casuali all'interno di un intervallo predefinito.
  • ๐Ÿ“ Programmazione dei timer: BeanShell, BSF e JSR223 aggiungono ritardi personalizzati.
  • ๐Ÿค– Assistenza AI: I modelli di intelligenza artificiale calcolano i tempi di percorrenza basandosi sul traffico reale.

JMeter Timer

Cosa sono i timer?

Per impostazione predefinita, JMeter invia la richiesta senza fermarsi tra ogni richiesta. In quel caso, JMeter potuto sopraffare il tuo server di test effettuando troppe richieste in un breve lasso di tempo.

Immaginiamo che tu invii migliaia di richieste a un server web in fase di test in pochi secondi. Ecco cosa succede!

Temporizzatori inseriti JMeter

I timer lo consentono JMeter a ritardo tra ogni richiesta effettuata da un thread. Un timer puรฒ risolvere il server sovraccarico problema.

Inoltre nella vita reale i visitatori non arrivano su un sito tutti nello stesso momento, ma a intervalli di tempo diversi. Quindi Timer aiuterร  a imitare il comportamento in tempo reale.

Di seguito sono riportati alcuni comune tipi di timer in JMeter

Temporizzatore costante

Il timer costante ritarda ogni richiesta dell'utente per il stesso quantitร  di tempo.

Timer costante in JMeter

Temporizzatore casuale gaussiano

Gaussiana il timer casuale ritarda ogni richiesta dell'utente per a con quantitร  di tempo.

Timer casuale gaussiano in JMeter

Scheda Sintetica

Attributo Descrizione
Nome Descriptive nome per questo timer mostrato nell'albero
Deviazioni (millisecondi) A parametro della funzione di distribuzione gaussiana
Offset ritardo costante (millisecondi) aggiuntivo valore in millisecondi

Quindi il ritardo totale รจ descritto come nella figura seguente:

Timer casuale gaussiano in JMeter

Timer casuale uniforme

Il timer casuale uniforme ritarda ciascuna richiesta dell'utente per un periodo di tempo casuale.

Timer casuale uniforme in JMeter

Scheda Sintetica

Attributo Descrizione
Nome Descriptive nome per questo timer mostrato nell'albero
Ritardo casuale massimo Numero casuale massimo di millisecondi da ritardare.
Offset ritardo costante (millisecondi) aggiuntivo valore in millisecondi

Il ritardo totale รจ la somma del valore casuale e del valore di offset.

Temporizzatore BeanShell

Migliori Beanshell รˆ possibile utilizzare il timer generare un tempo di ritardo tra ogni richiesta dell'utente.

Temporizzatore BSF

Il timer BSF puรฒ essere utilizzato per generare un ritardo tra ciascuna richiesta dell'utente utilizzando a BSF linguaggio di scripting.

Temporizzatore JSR223

Il timer JSR223 puรฒ essere utilizzato per generare un ritardo tra ciascuna richiesta dell'utente utilizzando a JSR223 scripting language

Come utilizzare il timer costante

In questo esempio utilizzerai Temporizzatore costante per impostare un ritardo fisso tra le richieste degli utenti a google.com.

Iniziamo con un semplice script di prova

  1. JMeter crea prima richiesta dell'utente a http://www.google.com 100 volte
  2. Ritardo tra ogni richiesta dell'utente รจ 5000 ms

Ecco il tabella di marcia per questo esempio pratico:

Utilizzare il timer costante in JMeter

Pre-condizionata

We riutilizzazione i passaggi 1 e 2 nel tutorial JMeter Test di Performance.

Passaggio 1) Aggiungi gruppo di thread

Fare clic destro sul Piano di test e aggiungi un nuovo gruppo di thread: Aggiungi-> Discussioni (utenti) ->Gruppo discussione

Nel pannello di controllo del gruppo thread, immettere Proprietร  thread come segue

Aggiungi gruppo di thread

Questa impostazione consente JMeter creare prima richiesta dell'utente a http://www.google.com in 100 volte

Passaggio 2) Aggiungi JMeter elementi

  • Aggiungi richiesta HTTP predefinita
  • Aggiungi richiesta HTTP

Passaggio 3) Aggiungi timer costante

Fare clic con Gruppo discussione -> Timer -> Temporizzatore costante

Aggiungi timer costante

Configurazione del ritardo del thread di 5000 millisecondi

Aggiungi timer costante

Passaggio 4) Aggiungi Visualizza risultati nella tabella

Visualizza risultati in tabella visualizza il risultato del test in formato tabella.

Fare clic destro Aggiungi -> Ascoltatore ->Visualizza il risultato nella tabella

Aggiungi Visualizza risultati nella tabella

Visualizza i risultati nella tabella visualizzata come nella figura seguente

Aggiungi Visualizza risultati nella tabella

Passaggio 5) Esegui il test

Quando sei pronto per eseguire un test, fai clic la corsa pulsante sulla barra dei menu oppure premere Ctrl + R

Questo รจ il risultato di questo test

Esegui il test

Ad esempio, nella figura sopra, analizziamo il Esempio 2

  • Ora di inizio รจ 22:05:01.866
  • Tempo del campione del campione 2 รจ 172 ms
  • Temporizzatore costante: 5000 ms (come configurato)
  • Fine di questo campione รจ = 22:05:01.866 + 172 + 5000 = 22:05:07.038

Quindi il campione 3 dovrebbe iniziare nel momento in cui รจ 22:05:07.039 (Come mostrato nella figura sopra)

Migliori ritardo di ciascun campione รจ 5000 ms

Se si modifica il timer costante รจ zero, vedrai che il risultato รจ cambiato

Esegui il test

Analizziamo il Esempio 1

  • Ora di inizio รจ 22:17:39.141
  • Tempo del campione del campione 2 รจ 370 ms
  • Temporizzatore costante : 0 ms (come configurato)
  • Fine di questo campione รจ = 22:17:39.141+ 370 + 0 = 22:17:39.511

Di conseguenza, Esempio 2 dovrebbe iniziare all'ora in cui รจ 22:17:39.512 (Mostrato nella figura sopra)

Troubleshooting

Se riscontri il problema durante l'esecuzione dello scenario sopra... procedi come segue

  1. Controlla se ti stai connettendo a Internet tramite un proxy. Se sรฌ, rimuovi il proxy.
  2. Apri una nuova istanza di JMeter
  3. Aprire il TimerTestPlan.jmx in JMeter
  4. Double Fare clic su Gruppo di thread -> Visualizza risultato nella tabella
  5. Esegui il test

DOMANDE FREQUENTI

Il tempo di riflessione รจ la pausa che un utente si prende tra le azioni, riprodotta da JMeter timer.

Un timer si applica a ogni campionatore nel suo ambito; a livello di gruppo di thread, ritarda tutte le richieste in quel gruppo.

Il timer costante aggiunge un ritardo fisso; il timer casuale uniforme aggiunge un ritardo casuale entro un intervallo.

Sรฌ. L'IA analizza i registri del traffico e raccomanda distribuzioni del tempo di riflessione che corrispondono al ritmo reale dell'utente in JMeter.

L'intelligenza artificiale apprende i modelli di utilizzo, genera ritmi realistici e segnala le anomalie, rendendo i test di carico piรน predittivi.

Riassumi questo post con: