Comment faire pour augmenter la bande passante du réseau de AWS EC2?
Nous avons hébergé un site dans AWS EC2 de type c4.8xlarge. C'est un système assez grande avec beaucoup de mémoire et de ressources de calcul. Des milliers d'utilisateurs ont essayé d'accéder au système au cours de 2 heures de délais, ce week-end. Bien qu'elle ne tombe pas en panne, il a ralenti un peu et n'a pas pu effectuer au niveau attendu. En analysant les statistiques ont montré que limité la bande passante du réseau est la principale cause du ralentissement. L'utilisation de l'UC est resté au-dessous de 6%, mais les équipements de mise en réseau et NetworkOut semblent avoir atteint un pic à 60 MO et 200 MO respectivement, au cours de cette période. Alors que je ne suis pas un réseau attendre, un peu de lecture en ligne semble indiquer que tout le trafic passe par une carte d'interface réseau pourrait être la cause principale de limité la bande passante du réseau. Est-ce vrai? Serait l'hébergement du site sur un autre type d'instance EC2 aider à augmenter la bande passante du réseau? Voici comment les équipements de mise en réseau et networkOut métriques ressemblait sous une lourde charge.
J'ai pu, et peut-être que je devrais. Je comprends les risques associés à instance unique, mais la demande a peu de valeur de l'entreprise et ces risques sont acceptables. C'est une fois par an chose. Mise à l'échelle horizontale pour répondre à la CPU ou de la mémoire ou de limites de stockage est compréhensible, mais d'avoir à le faire simplement pour obtenir plus de bande passante semble comme une déception. 200 mo d'équipements de mise en réseau et 60MO NetworkOut semble trop faible, malgré, peut-être que je me trompe. Et je ne suis même pas sûr si elle par seconde. AWS CloudWatch ne spécifie pas clairement.
Bien que votre exemple n'ont jusqu'à 10 Gbit interface réseau, clairement, il devrait être capable de fournir des performances de ec2 à l'internet ou si la performance est limitée à l'inter instance de la communication. Tout au long de la vous êtes l'obtention est d'environ 1,8 Gb / s avec les frais généraux. Avez-vous activé réseau amélioré? docs.aws.amazon.com/AWSEC2/latest/UserGuide/...
Apparemment AWS mesures de bande passante dans les 60 secondes d'intervalle par défaut. Donc, en termes courants que j'ai vraiment eu de instance ec2 à son pic d'utilisation est de 1 mo/sec NetworkOut et 3.3 MO/sec en équipements de mise en réseau. Wow! c'est incroyablement bas. Toujours pas sûr de savoir comment bien fixer. forums.aws.amazon.com/message.jspa?messageID=389391
Comment serait mise à l'échelle horizontale de l'aide si vous devez toujours passer par l'intermédiaire d'un répartiteur de charge avec les mêmes ou même la baisse des limitations de bande passante?
OriginalL'auteur Srini K | 2015-03-31
Vous devez vous connecter pour publier un commentaire.
Si vous ont été limitées par la bande passante, que graphique de devenir à plat lorsque vous atteignez la limite. En outre, comme d'autres, a souligné que seulement 1 MO/s et 3 MO/s, et je peux faire plus que ça sur un t2.micro à l'internet.
Qu'est-ce que le système faire avec chaque demande? Voici une liste de choses que je regarde, dans l'ordre:
Il n'est pas impossible, mais très peu probable que vous pourriez être un goulot d'étranglement au niveau de la couche réseau avec la création de la connexion ou de paquets par seconde, si vos demandes sont très petites.
OriginalL'auteur BobMcGee
Vos équipements de mise en réseau et en fait, >50 mo/s. Si votre CPU et de la Mémoire séjourné dans un délai raisonnable plages ensuite, votre exemple est très bien. Vous devriez également vérifier le journal de connexion à votre base de données (en supposant que vous exécutez un RDB avec votre système), le ralentir en fait pourrait être causé par la lenteur de la réponse sur votre base de données qui rend le web server de répondre plus lentement.
Aussi, vous devez exécuter votre système avec un AWS Loadbalancer et l'installation et la autoscaler avec un déclencheur sur le réseau. De cette façon, une instance secondaire est lancé pour aider à l'augmentation temporaire de la charge sur le réseau. Si la cause est en effet l'augmentation de la connexion de votre base de données, puis l'équilibrage de charge ne va pas aider avec le problème. Au lieu de cela, vous voulez améliorer votre cache de configuration, donc il y a moins de charge sur la base de données par utilisateur/connexion à votre site web.
OriginalL'auteur Egbert von Frankenberg
Oui Amazon a une notion de l'ENI - Interface Réseau Élastique. Alors que vous pouvez NIC supplémentaire à l'instance; elle est toujours d'une interface logique. L'approvisionnement et la disponibilité du réseau dépend fortement (bien purement dépend) l'instance du type que vous choisissez. Amazon a plusieurs types de /la famille de l'instance de type R, I, C, D, G - optimisé à la Mémoire, e /s, de Calcul, de Stockage Dense, GPU, respectivement. Vous pouvez voir si vous pouvez presser max. hors d'eux.
Indépendamment de ce que jamais vous choisissez comme type d'instance, vous serait essentiellement atteint un seuil et ne pas être en mesure d'évoluer au-delà d'un certain point. L'évolutivité particulièrement unique contre d'autres évolutivité des facteurs comme la Mémoire /CPU.
Modifier votre architecture et plutôt que d'avoir un très grand /grand exemple, plusieurs des moyennes ou grandes instances derrière et ELB.
Comment le fait d'avoir plusieurs instances de l'aide si vous devez toujours passer par l'intermédiaire d'un répartiteur de charge avec les mêmes ou même la baisse des limitations de bande passante? (En supposant que vous devrez utiliser une instance ec2 comme votre équilibreur de charge avec quelque chose comme haproxy installé).
Alors que ce n'est pas de la hanche, à grande échelle est une solution viable. l'ensemble de Ce site et de l'ensemble de la Pile d'Échange s'exécute sur 25 serveurs. Ils ont déclaré qu'ils peuvent effectivement fonctionner avec un seul serveur web, et de leurs serveurs ont des spécifications très semblables à la c4.8xlarge (mais avec un meilleur stockage). Je doute sérieusement qu'ils ont touché une mise à l'échelle verticale limite ici, c'est probablement une configuration ou un problème de code, pas d'une limitation matérielle.
OriginalL'auteur Naveen Vijay