Estou executando um script python em uma instância ec2 que insere linhas em um banco de dados em outra instância. No monitoramento do ec2, vi uma utilização de 100% da CPU, enquanto o top mostra apenas 20% para o processo python. O que está faltando no topo? Sobrecarga de rede?
amazon-ec2
top
RickyA
fonte
fonte
Respostas:
Os dados expostos por
top
geralmente são insuficientes ou enganosos em ambientes virtualizados como o Amazon EC2 e a porcentagem relatada depende do tipo de instância e da utilização do núcleo do processador subjacente (que geralmente não corresponde ao hardware virtualizado que você recebe do hypervisor), entre outras coisas - o que você está vendo é provavelmente causado pelo respectivo tempo de roubo da CPU, conforme exposto na maioria das ferramentas de monitoramento Unix / Linux atualmente - veja, por exemplo, as colunas% steal ou st insar
outop
:A postagem do blog sobre monitoramento EC2: o caso de CPU roubada fornece uma boa exploração e ilustração deste tópico:
Observe que essa métrica do hipervisor parece ser (facilmente) acessível apenas em sistemas Unix / Linux, mas não parece observável no Windows (ainda); veja minha pergunta. Existe um equivalente do Windows para 'CPU steal time' do Windows? para saber mais sobre esse problema.
fonte
A Amazon provavelmente verifica a carga e não usa porcentagem do TOP. Se você tiver dois processos na CPU, eles poderão ser utilizados em 20%, mas você poderá ter a carga 2.
fonte