2014-06-05 5 views
0

J'ai une architecture de serveur sur Amazon AWS comme ceci: Une instance EC2 avec m1.large config et une instance RDS avec db.m3.medium config. L'EC2 contient une API qui gère les requêtes, prend les données de la base de données RDS et les renvoie à l'utilisateur. J'ai fait quelques tests de performance en utilisant jmeter et j'ai vu qu'envoyer 500 requêtes/seconde le temps de réponse maximum des serveurs est à 10 secondes/requête, le minimum est de 130 millisecondes et en moyenne environ 4 secondes. Les métriques dans AWS montrent que le processeur EC2 est utilisé uniquement à 4%, le processeur RDS est utilisé à 20%. Malheureusement dans EC2 AWS ne fournit pas de surveillance de la mémoire, mais dans RDS, la mémoire libre disponible ne tombe jamais sous 2.6 Gb. Donc, ayant ce résultat à 500 req/seconde, pourquoi le temps de réponse est si grand, si les serveurs ne fonctionnent pas à pleine capacité? Est-ce que quelque chose d'autre me manque?Quels sont les facteurs à prendre en compte pour améliorer les performances du serveur dans AWS?

Merci beaucoup!

Répondre

1

Surveillance, le profilage, les tests et améliorations progressives est la voie à suivre, permettez-moi de partager quelques ressources pour que:

Pour avoir la surveillance de la mémoire, vous pouvez installer les scripts CloudWatch Monitring pour EC2. Cela peut ajouter la surveillance de la mémoire, du disque et de l'échange en tant que métriques personnalisées.

voir: http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/mon-scripts.html

Pour les outils de profilage il y a beaucoup. Si vous utilisez Linux, le discours et le livre de Brendan Gregg sont une très bonne introduction à eux

voir: http://www.joyent.com/blog/linux-performance-analysis-and-tools-brendan-gregg-s-talk-at-scale-11x

En outre, notez que les différents types d'instances peuvent avoir très différentes performances IO réseau, essayez d'exécuter votre test comparant différents types d'instances. En particulier, vérifiez les familles C3, R3 et I2, qui prennent en charge SR-IOV.

voir: http://aws.amazon.com/ec2/instance-types/

+0

Merci beaucoup pour vos vêtements! – AndreiTiberiu

Questions connexes