J'exécute un script python sur une instance ec2 qui insère des lignes dans une base de données sur une autre instance. Dans la surveillance d'ec2, j'ai vu une utilisation de 100% du processeur, alors que top n'affiche que 20% pour le processus python. Qu'est-ce qui manque du haut? Frais généraux du réseau?
amazon-ec2
top
RickyA
la source
la source
Réponses:
Les données exposées par
top
sont souvent insuffisantes ou trompeuses dans des environnements virtualisés comme Amazon EC2 et le pourcentage signalé dépend de votre type d'instance et de l'utilisation du cœur du processeur sous-jacent (qui ne correspond généralement pas au matériel virtualisé qui vous est présenté par l'hyperviseur), parmi d'autres choses - ce que vous voyez est très probablement provoqué par le temps de vol du processeur respectif tel qu'exposé dans la plupart des outils de surveillance Unix / Linux actuels - voir par exemple les colonnes% vol ou st danssar
outop
:Le post de blog EC2 Monitoring: le cas du CPU volé offre une belle exploration et illustration de ce sujet:
Veuillez noter que cette métrique d'hyperviseur semble être (facilement) accessible uniquement sur les systèmes Unix / Linux, mais ne semble pas être observable sur Windows (pour l'instant), voir ma question Existe-t-il un équivalent Windows du temps de vol du processeur d'Unix? pour en savoir plus sur ce problème.
la source
Amazon vérifie probablement la charge et aucun pourcentage d'utilisation de TOP. Si vous avez deux processus sur le processeur, ils peuvent être utilisés à 20% mais vous pouvez avoir la charge 2.
la source