[JAVA] Téléchargez des fichiers volumineux avec Apache JMeter

Chose que tu veux faire

Je veux faire un test de charge comme télécharger un gros fichier avec JMeter. (Ceci est le contenu de l'enquête car il y avait une demande pour effectuer un test de charge du téléchargement de fichier à l'aide d'Azure CDN)

Choses à préparer

Il est important de remplir les conditions suivantes

--Installez la version 64 bits de Java

Que faire pour chacun

Installez la version 64 bits de Java

Téléchargez et installez la version 64 bits du programme d'installation Java à partir du site Web officiel de Java. La procédure est une installation manuelle, se référant au document sur le site suivant.

https://java.com/ja/download/faq/java_win64bit.xml

Utilisez la version & 64 bits de la JVM pour augmenter la taille du tas avec les options d'exécution JVM

Ouvrez jmeter.bat dans le répertoire d'installation de JMeter avec un éditeur de texte et modifiez les parties suivantes si nécessaire. Dans les paramètres ci-dessous, la taille du tas est étendue à 16 Go et une JVM 64 bits est utilisée.

before


set HEAP=-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m

after


set HEAP=-Xms1g -Xmx16g -XX:MaxMetaspaceSize=256m -d64

Équipé d'une mémoire réelle pouvant étendre suffisamment la taille du tas

Si c'est une machine physique, c'est à vous de décider, et si c'est une machine virtuelle, il vaut mieux en choisir une avec une mémoire supérieure à la taille du tas.

Par exemple, s'il s'agit d'une machine virtuelle Azure, la série E, etc. aura une grande quantité de mémoire installée et sera d'une taille facile à utiliser. https://docs.microsoft.com/ja-jp/azure/virtual-machines/ev3-esv3-series

Exécuter en mode CUI

Lorsque vous démarrez JMeter, vous devriez recevoir le message suivant lorsque vous le démarrez avec GUI.

Don't use GUI mode for load testing !, only for Test creation and Test debugging.
For load testing, use CLI Mode (was NON GUI):
   jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]

Après avoir généré le fichier jmx avec l'interface graphique, redémarrons JMeter à partir de la console.

Résumé

Si les conditions ci-dessus sont remplies, il sera plus facile pour JMeter d'effectuer des tests de charge tels que le téléchargement de fichiers volumineux. (Cependant, cela dépend de la quantité de mémoire qui peut être allouée au tas, donc je suis désolé si cela ne fonctionne pas.)

Erreurs qui se produisent lorsque les conditions ne sont pas remplies (pour la recherche)

Taille de tas JVM insuffisante

java.lang.OutOfMemoryError: Java heap space

La version 64 bits de Java n'est pas configurée

Error: This Java instance does not support a 64-bit JVM.
Please install the desired version.

Recommended Posts

Téléchargez des fichiers volumineux avec Apache JMeter
Convertissez de gros fichiers XLSX en CSV avec Apache POI
[Java] Gérer les fichiers Excel avec Apache POI
Téléchargement confortable avec JAVA
Gérez les fichiers avec NIO.2.
Téléchargement Java avec Ansible
Test de charge avec JMeter
Télécharger avec Spring Boot
Évitez les erreurs de bombe Zip lors de la lecture de gros fichiers avec POI
Parlez du téléchargement de fichiers à l'aide de l'API Slack avec Apache HttpPost
Échantillon répété avec Apache Freemarker
Démarrez Apache Solr avec Embedded.
Accédez à Apache Kafka avec Micronaut
Manipuler Excel avec Apache POI
Je veux éviter OutOfMemory lors de la sortie de gros fichiers avec POI