Julien Philippon

Test de montée en charge avec oha

J’ai récemment découvert un petit outil, écrit en Rust, qui permet de faire des tests de montée en charge qui s’appelle oha.

Vous n’avez peut-être pas envie de vous embêter avec l’installation, je vous ai créé une image Docker pour l’utiliser 10 secondes chrono :

$ docker run -t apoutchika/oha https://www.monsite.com

Par défaut, il envoie 200. N’hésitez pas à aller voir la documentation, ou regarder les options en affichant l’aide pour affiner la configuration :

$ docker run -t apoutchika/oha --help

Je l’ai testé sur un projet hébergé chez clever cloud, c’est magique de voir les ressources du serveur augmenter pour absorber la charge.

Par curiosité, je viens de tester le rendu sur ce blog qui est entièrement en statique avec le framework Hugo (j’en parle dans cet article) et qui est hébergé chez Vercel: les performances sont impressionnantes, voici le retour que donne oha :

Summary:
  Success rate: 1.0000
  Total:        2.5630 secs
  Slowest:      2.2890 secs
  Fastest:      0.0229 secs
  Average:      0.5949 secs
  Requests/sec: 78.0339

  Total data:   1.74 MiB
  Size/request: 8.91 KiB
  Size/sec:     695.29 KiB

Response time histogram:
  0.160 [116] |■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
  0.320 [22]  |■■■■■■
  0.480 [12]  |■■■
  0.641 [0]   |
  0.801 [0]   |
  0.961 [0]   |
  1.121 [0]   |
  1.281 [0]   |
  1.441 [0]   |
  1.602 [0]   |
  1.762 [50]  |■■■■■■■■■■■■■

Latency distribution:
  10% in 0.0429 secs
  25% in 0.0636 secs
  50% in 0.1052 secs
  75% in 1.9116 secs
  90% in 1.9846 secs
  95% in 2.1307 secs
  99% in 2.2885 secs

Details (average, fastest, slowest):
  DNS+dialup:   0.8852 secs, 0.8353 secs, 1.1044 secs
  DNS-lookup:   0.5424 secs, 0.5340 secs, 0.5486 secs

Status code distribution: [200] 200 responses