j'ai écrit load testing tool simple pour tester les performances des modules Java. Un problème que j'ai rencontré est l'algorithme des mesures de débit. Les tests sont exécutés dans plusieurs threads (le client configure combien de fois le test doit être répété), et le temps d'exécution est enregistré. Ainsi, lorsque les tests sont terminés, nous avons l'histoire suivante:mesures Throughput
4 test executions
2 threads
36ms overall time
- idle
* test execution
5ms 9ms 4ms 13ms
T1 |-*****-*********-****-*************-|
3ms 6ms 7ms 11ms
T2 |-***-******-*******-***********-----|
<-----------------36ms--------------->
Pour le moment, je débit calculer (par seconde) de manière suivante: 1000/overallTime * threadCount
.
Mais il y a un problème. Que faire si un fil complètera ses propres tests plus rapidement (pour une raison quelconque):
3ms 3ms 3ms 3ms
T1 |-***-***-***-***----------------|
3ms 6ms 7ms 11ms
T2 |-***-******-*******-***********-|
<--------------32ms-------------->
Dans ce cas de débit réel est beaucoup mieux en raison du débit mesuré est délimité par le fil le plus lent. Donc, ma question est de savoir comment je devrais mesurer le débit de l'exécution de code dans un environnement multithread.
Oui, je regardais à la case PLACETTES il y a quelque temps. C'est une idée très intéressante pour la visualisation des résultats de test. Merci. –