Je teste la charge IIS 7.5 (WinR2/SP1) depuis mon client Windows 7/SP1. J'ai un script qui effectue trois appels ab
comme:
start /B cmd /c ab.exe -k -n 500 -c 50 http://rhvwr2vsu410/HelloWebAPI/Home/SyncProducts > SyncProducts.txt
Lorsque la simultanéité est> 5, je reçois rapidement le message d'erreur
apr_poll: le délai spécifié a expiré (70007)
Et ab
arrête de faire des requêtes. Je ne parviens même pas à 100 requêtes terminées .
Cela se produit dans les 30 secondes suivant le démarrage de mon script. La page de documentation ab ne fournit pas grand-chose. Question de débordement de pile associée . question liée à une défaillance du serveur .
Vous devez avoir la version 2.4 et utiliser -s timeout
option .
Vous pouvez utiliser mon binaire win32-x86 (compilé sous Visual Studio 2008 à partir du trunk 8 février 2013):
Je l'ai fait en utilisant: http://code.google.com/p/apachebench-standalone/wiki/HowToBuild et http://ftp.ps.pl/pub/Apache //apr/binaries/win32/apr-1.3.6-iconv-1.2.1-util-1.3.8-win32-x86-msvcrt60.Zip
ab --help
-s timeout Seconds to max. wait for each response
Default is 30 seconds
Ajouter une option: - s 12 à la commande ab, où 120 est le nouveau délai d'expiration. Si ce n'est pas assez, mettez-le encore plus haut ...
ab --help
-s timeout Seconds to max. wait for each response
Default is 30 seconds
-k Use HTTP KeepAlive feature
Ça marche pour moi
Cela ressemble à un bogue ab.
J'ai eu un problème similaire sur OS X (maintenant que vous mentionnez que cela se produit sous Windows, je suis plus confiant que ab est le coupable). J'ai parcouru le profilage et le traçage de mon application Web, mais je n'ai rien trouvé. J'ai ensuite testé des pages statiques hors de nginx, et cela m'a toujours donné l'erreur. Alors je suis allé et j'ai trouvé un remplaçant ... jMeter. Fonctionne très bien, mais je voudrais quand même savoir quel est le problème ab.