2012-06-25 3 views
6

Ho bisogno di fare un test di carico per un servizio web. Richiede almeno 1000 utenti simultanei.Come dovrei simulare 1000 utenti simultanei come reali?

So che alcuni strumenti di test (ad esempio JMeter) possono simulare un gruppo di utenti concorrenti con thread multipli. Ma quegli utenti non sono concomitanti.

Se eseguo il programma JMeter in una macchina con solo 2 core CPU, sono attivi solo 2 utenti simultanei in un determinato intervallo di tempo, anche se ci sono 1000 thread multipli generati con lo strumento di test.

C'è un modo per creare utenti concomitanti reali?

risposta

11

Dal punto di vista del servizio Web, gli utenti sono concomitante. Una CPU con due core può facilmente scambiare tra 1000 thread; il più delle volte, il thread aspetterà l'I/O di rete, quindi è molto simile a come funzionerebbe se avessi effettivamente 1000 core.

Quindi JMeter dovrebbe andare bene. È possibile che se il thread di test deve eseguire un carico di lavoro intensivo della CPU, questo potrebbe influenzare i risultati. Ma di solito, i thread di test stanno solo aspettando una risposta.

+0

+1 per essere realistici. Se hai bisogno di un utente per CPU, avrai bisogno di 1000 CPU, che potrebbero essere "reali" ma non realistiche. –