Server load, cpu load, ou carga do servidor



:. Server load, cpu load, ou carga do servidor. Já deve estar familiarizado com cargas e médias da carga (load averages) no sistema Linux. Estes valores podem ser observados com os comandos uptime e top, como se .:



Já deve estar familiarizado com cargas e médias da carga (load averages) em sistema Linux. Estes valores podem ser observados com os comandos uptime e top, como se mostra a seguir:

load average: 0.09, 0.05, 0.01

A maioria das pessoas tem uma ideia de qual é o significado destes números: Eles representam as médias da carga observadas em períodos progressivamente mais longos de tempo (média no último um, cinco, e quinze minutos), e quanto menores estes números melhor.

Números grandes representam problemas ou uma máquina a trabalhar acima da sua capacidade e com performances baixas.

Mas qual é o limite? O que se pode considerar BOM e MAU em termos de valor para a carga (load) de uma máquina. Quando é que nos devemos preocupar em relação a valores de carga e, quando é que se torna imperativo lutar por corrigi-los o mais rápido possível.

Primeiro, um pequeno enquadramento sobre o que estes valores significam na realidade. Vamos começar com um caso simples: Uma máquina com um único núcleo de processamento (single-core processor).

Um processador com um único núcleo (single-core) é como uma via de trafego simples. Imagine que é um operador de trafego duma ponte. Por vezes a sua ponte está cheia com uma fila de carros alinhados para a atravessar. Você deve informar os utentes sobre como o trafego se está a comportar na sua ponte. Um bom indicador é, informar quantos carros estão à espera num determinado tempo. Se não houver carros à espera, os condutores, que se aproximam, sabem que podem atravessar sem demoras. Se, pelo contrário, existirem muitos carros à espera, os condutores ficam avisados para demoras.

Vamos agora definir a terminologia do sistema de informação a usar pelo operador da ponte:

0.00 Significa que não há trefego na ponte. De facto, valores entre 0.00 e 1.00 significam que não há carros parados para atravessar a ponte, isto é, qualquer carro que chega à ponte, pode atravessa-la sem demora.

1.00 Significa que se atingiu o ponto máximo de escoamento sem demoras. Este valor não é mau, no entanto, indica-nos que qualquer aumento de trafego irá gerar demoras e atrasos.

Mais que 1.00 significa atrasos. Quanto? bem, depende do valor. 2.00 significa que estão a chegar o dobro dos carros que a ponte tem capacidade de escoar, 3.00 significa que estão a chegar 3 vezes mais carros que a ponte tem capacidade e por aí a diante.

 = load of 1.00

 = load of 0.50

 = load of 1.70

 

Isto é basicamente o que se passa com a carga de CPU. Os processos são os carros e a CPU é a ponte. Cada processo usa um pedaço de tempo, de CPU ou à espera de usar a CPU. O Unix refere-se a isto como o comprimento da fila de execução: a soma do número de processos que estão a correr no momento mais o número de processos que estão na fila cara serem executados.

Assim, tal como na ponte, a carga de CPU ideal deverá estará abaixo de 1.00. Valores temporários acima de 1.00 podem não ser o fim do mundo, mas se a carga se for tornando consistente acima de 1.00 deve preocupar-se com o assunto.

Como já referido anteriormente, uma carga de CPU de 1.00 indica-nos que estamos no máximo sem perda de performance, no entanto, este valor não tem margem de tolerância. O ideal é apontar para valores de 0.70.

O que acontece com sistemas multiprocessamento?

No caso de sistemas com vários processadores, a carga deve ser vista em relação ao número de processadores disponíveis. 1.00 Indica 100% de utilização para um processador, 2.00 indica 100% de utilização para dois processadores ou dual-core e 4.00 indica 100% de utilização para 4 processadores ou quad-core.

Múltiplos processadores Vs múltiplos núcleos

Em termos de performance, uma máquina com dois processadores é equivalente a outra com um processador com dois núcleos (dual-core)? Sim, analisando as coisas um pouco superficialmente. Existem muitas outras coisas a levar em consideração, mas,  apesar desses pontos mais delicados, para fins de dimensionamento até o valor da carga de CPU, o número total de núcleos é o que importa, independentemente do número de processadores físicos esses núcleos estão espalhados.

Autor: Carlos Miranda
Data: 2012-12-14


Contato: mail@artigosenoticias.com   |   SAPO MAIL   |   HOTMAIL  |   GMAIL