2010-02-17 6 views
1

J'utilise pylot pour tester le stress d'une application Web que j'ai créée. Le test simule 100 utilisateurs se connectant à l'application et le test dure 200 secondes. En moyenne, env. 4800 demandes sont faites au serveur et le même nombre de connexions à MySql, chacune d'entre elles exécutant 5 requêtes de sorte que nous parlons de requêtes 24K pendant le test.Test de stress de l'application Web

Les requêtes sont simples et les tables contiennent très peu de données. La chose est que pendant le test, je ne peux pas accéder à l'application à partir du Web. Je ne peux pas me connecter à MySQL ou le temps de réponse est très lent. Gardez à l'esprit que le test a lieu sur une image CentOS VMware que j'ai sur mon PC (512 Mo de mémoire allouée).

Voici les résultats du test

Demandes: 4809 Erreurs: 1 Moy Réponse Heure: 3,358 Moy Throughput: 23,53 Throughput actuelle: 420 Octets reçus: 193028

I Je crois que les erreurs de connexion sont causées par l'environnement de test bas de gamme, mais y a-t-il une façon de régler MySql pour accepter plus de connexions?

Merci.

Répondre

0

Essayez d'obtenir plus de détails sur les erreurs. Vérifiez les résultats ou ajoutez la journalisation sur le site Web.

0

Utilisez-vous un pool de connexions?

connexions MySQL Max peut facilement être augmentée si vous êtes réellement en cours d'exécution, regardez pour ce bloc dans les deux my.ini ou my.cnf dans le répertoire d'installation MySQL:

# The maximum amount of concurrent sessions the MySQL server will 
# allow. One of these connections will be reserved for a user with 
# SUPER privileges to allow the administrator to login even if the 
# connection limit has been reached. 

max_connections=500 

Si vous utilisez une connexion pool vous pouvez limiter sa taille à, disons, 250 des 500 que MySQL a à votre disposition, alors vous avez 250 "spare" qui garantissent que votre accès web obtient une connexion. Vous pouvez être assez créatif en donnant un processus de connexion 100, des lectures de données 100, des écritures de données 100, etc., mais cela affecte évidemment votre conception d'application de manière significative.

+0

Salut Brian, Non, je ne suis pas en utilisant une piscine et les max_connections mise en my.cnf est à 768, donc je ne devrais pas avoir un problème avec les connexions (je crois) – Thomas

+0

S'il est assez facile de mettre en place une connexion piscine je l'essayerais; vous * pourriez * atteindre cette limite de connexion avec un tel test de stress. Soit cela ou juste le régler à 1500 et voir comment vous obtenez :-) – Brian