Comment puis-je faire une planification de la capacité de mon application web et de décider de l'architecture de déploiement?
J'ai un ASP.net application web déployée sur le petit AWS instance (Dual Core AMD, 2,60 GHz, 1.7 GO de RAM). Je voudrais effectuer des tests de charge sur ce serveur pour 300 utilisateurs simultanés et pour l'avenir, je veux concevoir la tentative de planification de la capacité et de l'architecture de déploiement pour 250 000 utilisateurs enregistrés pour mon application.
Je suis très nouvelle personne dans ce domaine et n'ont pas fait n'importe quel type de test de charge avant.
Les cas d'Utilisation et scénario de mon
l'application sera comme ci-dessous:Scénario - 250, 000 utilisateurs enregistrés dans la base de données
Simultanéité – 5% - 7% - environ 17 500
Chaque utilisateur dispose d'une étagère à livres et
en supposant que chaque utilisateur est abonné pour
10 livres. Chaque livre est d'environ 25 MO
en taille, avec plus de 400 pagesCas d'utilisation
- La Connexion De L'Utilisateur
- Authentification de base de données & autorisation
- Vue Étagère de Livre avec des images du livre de
- Étagère De Livre (.swf) - 400 KO (est chargé pour chaque utilisateur)
- 10 livre d'images seront chargées (20 KO par image)(environ)
- catalog.xml - 30 KO /utilisateur pour alloués pour l'utilisateur
- Note: Environ 650KB de données est téléchargé sur le client
machine- Parcourir le livre : en cliquant Sur un livre d'image fichiers suivants & sa taille
être téléchargé pour les clients de la machine
- Un temps
- Lecteur.swf - 950 KO (d'abord télécharger)
- De données XML est d'environ 100 KO /par livre (clic)
- Book.xml
- Annotation.xml
- Catalog.xml
- Usersettings.xml 40 KO*4 = 160 KO par utilisateur (.swf)
- Remarque: Environ 1200KB de données est téléchargé sur le client
machine
Quelqu'un pourrait s'il vous plaît suggérer comment puis-je procéder?
Très bien merci d'avance,
Amar
OriginalL'auteur Amar | 2011-01-20
Vous devez vous connecter pour publier un commentaire.
Remplir le premier objectif de test (300 utilisateurs) est assez simple - choisir un outil de test de charge, de construire les scénarios et les tests. Puis tune/optimiser et répétez.
Mais je pense que votre question est de savoir comment tests et la planification de votre pleine capacité - ce qui vous dites est ~18k, nombre d'utilisateurs simultanés. Tout d'abord, assurez-vous que le nombre (7% de la base d'utilisateurs) est le pic de la simultanéité, pas la moyenne. Vous avez besoin de tester le pic.
Donc en supposant que vous êtes la planification d'une charge équilibrée multiples cluster de serveurs pour gérer cette charge, la prochaine étape est de déterminer la capacité maximale d'un unique web/serveur d'application, sans l'équilibrage de charge en place. Cela vous donne un point de référence que vous pouvez utiliser pour juger de la performance du cluster. C'est vraiment une étape importante et beaucoup de nos clients de sauter cette étape, à leur propre détriment. Il est important, car il y a beaucoup de conditions dans lesquelles une charge équilibrée système n'évolue pas de façon linéaire avec le nombre de serveurs dans le cluster. Idéalement, il devrait et les systèmes de bons d'obtenir d'assez près. Vous seriez surpris de voir combien souvent nous voyons des systèmes qui ne sont pas à l'échelle. Nous avons même vu un peu de systèmes qui ont réellement inférieur capacité d'un cluster composé que d'un seul serveur peut gérer sur son propre.
Une fois que vous avez que la base de référence établie, vous pouvez faire une première estimation sur le nombre total de serveurs dont vous aurez besoin et vous pouvez construire votre cluster. Je recommande prochain test avec 2 web/app serveurs. Cela devrait presque doubler votre capacité de stockage. Si ce n'est pas le cas, vous devez déterminer pourquoi, avant de passer aux plus grosses épreuves. Les candidats probables sont l'équilibrage de charge de l'installation ou de la base de données (si un seul serveur de base de données est le service de tous les web/app serveurs). Parfois quelque chose de plus fondamental de l'architecture de l'application est en jeu.
Lorsque vous êtes convaincu que la mise à l'échelle de 1 à 2 serveurs fonctionne de façon optimale, alors vous pouvez passer à l'échelle jusqu'à votre pleine cluster et de tester leur capacité maximale. Être prêts à suivre si vous ne voyez pas l'évolutivité devrait - test avec 3, 4, 5 serveurs, etc.
J'espère que ça aide! Bonne chance :>
Assurez-vous. Nous avons toujours l'accent sur la performance de l'utilisateur final. Cela signifie que nous sommes principalement concernés par temps de chargement de page et des erreurs. Dans certaines organisations, vous souffrez peut-être d'autres critères, tels que l'utilisation de l'UC et de la consommation de bande passante que vous pouvez aussi être à la recherche pour le cas où vous êtes le partage de la bande passante et de la CPU avec d'autres applications. Nous avons ensuite d'exécuter des tests avec l'augmentation de la charge, en palier la rampe de configuration, afin de déterminer le niveau de l'utilisateur au cours de laquelle le système ne répond plus aux objectifs de performance: webperformance.com/load_testing/blog/2008/07/...
Grâce Merrill, j'ai fait un tour de test de charge à l'aide de VST pour 200 et 400 utilisateurs simultanés sur un réseau isolé en utilisant le serveur Quad Core et P4 machine à générer de la charge. J'ai considéré que le défaut de compteurs de performance de VSTS et a constaté que le temps processeur d'utilisation était de 14,6% et de l'utilisation de la mémoire a été de 900 mo pour 200 utilisateurs. Pour les 400, il était de 21,6% de temps processeur et 1 go de Mémoire. Sur cette base, je suppose que les quad core peut soutenir jusqu'à 1500. Est mon hypothèse est correcte?
Pouvez-vous aussi s'il vous plaît me suggérer comment je peux calculer la capacité de la bande passante? J'ai trouvé dans le rapport que la moyenne des octets envoyés/s a été de 10 mo / sec pour 400 utilisateurs simultanés. J'ai fait ce test de charge pendant 15 minutes. Merci.
Eh bien, vous pouvez faire une hypothèse sur la capacité, mais il ya une bonne chance qu'il sera mauvais. Alors que l'utilisation CPU pourrait à l'échelle linéaire, il ne pourrait pas. Ou d'autres facteurs peuvent limiter la capacité qui n'a pas été un facteur avec 2-400 utilisateurs. Que par l'essai de 1500 utilisateurs que vous pouvez être sûr que si le système le permet.
OriginalL'auteur CMerrill
Ce lien: http://support.microsoft.com/kb/231282, a des liens vers des outils de test de stress de votre site web.
C'est évidemment complexe, donc vous pouvez avoir de 2,5 millions d'utilisateurs enregistrés (vraiment beaucoup?), mais combien sont simultanées, et les zones du site web seront-ils à l'aide.
Toutes ces choses (et beaucoup plus), aura un impact sur la planification de la capacité de votre système.
De 250 000 != De 2,5 millions d'utilisateurs enregistrés
OriginalL'auteur Bravax