Je charge le test IIS 7.5 (WinR2 / SP1) à partir de mon client Windows 7 / SP1. J’ai un script qui fait trois appels ab
comme:
start /B cmd /c ab.exe -k -n 500 -c 50 http://rhvwr2vsu410/HelloWebAPI/Home/SyncProducts > SyncProducts.txt
Lorsque la concurrence est supérieure à 5, je reçois rapidement le message d’erreur
apr_poll: le délai d’attente spécifié a expiré (70007)
Et ab
cesse de faire des demandes. Je n’arrive même pas aux 100 demandes complétées .
Cela se produit dans les 30 secondes suivant le démarrage de mon script. La page de documentation ab ne fournit pas beaucoup. Question relative au dépassement de stack Question liée à la défaillance du serveur .
Vous devez avoir l’ option 2.4 version et utiliser l’ option -s timeout
.
Vous pouvez utiliser mon fichier binary win32-x86 (compilé sous Visual Studio 2008 à partir du tronc du 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 l’option: -s 120 à la commande ab, où 120 est le nouveau délai d’expiration. Si cela ne suffit pas, réglez-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 bug 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 contourné le profilage et le suivi de mon application Web, mais je n’ai rien trouvé. J’ai ensuite testé les pages statiques hors de nginx, et cela me donnait toujours l’erreur. Je suis donc allé et j’ai trouvé un remplaçant … jMeter. Fonctionne très bien, mais j’aimerais quand même savoir quel est le problème.