{"id":197,"date":"2018-07-31T18:23:33","date_gmt":"2018-07-31T21:23:33","guid":{"rendered":"http:\/\/saperx.com.br\/blog\/?p=197"},"modified":"2020-05-14T15:36:42","modified_gmt":"2020-05-14T18:36:42","slug":"load-average-como-interpretar","status":"publish","type":"post","link":"https:\/\/blog.saperx.com.br\/index.php\/2018\/07\/31\/load-average-como-interpretar\/","title":{"rendered":"Load Average. Como interpretar?"},"content":{"rendered":"\n<p>Qual a rela&ccedil;&atilde;o do load apresentado no sistema operacional em uma m&aacute;quina? 1.0 &eacute; bom? 8.0 &eacute; alto? Como saber o valor ideal? Devemos seguir a ideia de quanto menor o valor &eacute; melhor e quanto maior &eacute; pior?<\/p>\n<p>Definitivamente a literatura n&atilde;o &eacute; clara quando queremos saber detalhes sobre o &ldquo;Load Average&rdquo; (chamarei aqui de LA) e isso gera muitas d&uacute;vidas e conceitos errados.&nbsp;Neste post abordarei de uma forma simples este assunto que assombra muitos administradores de TI.<\/p>\n<p><!--more--><\/p>\n<p>Vejamos o exemplo do LA mostrado via comando htop:<\/p>\n<p><img loading=\"lazy\" class=\"alignnone size-full wp-image-199\" src=\"http:\/\/saperx.com.br\/blog\/wp-content\/uploads\/2018\/07\/htop.png\" alt=\"htop - Load Average. Como interpretar?\" width=\"934\" height=\"106\" srcset=\"https:\/\/blog.saperx.com.br\/wp-content\/uploads\/2018\/07\/htop.png 934w, https:\/\/blog.saperx.com.br\/wp-content\/uploads\/2018\/07\/htop-300x34.png 300w, https:\/\/blog.saperx.com.br\/wp-content\/uploads\/2018\/07\/htop-768x87.png 768w, https:\/\/blog.saperx.com.br\/wp-content\/uploads\/2018\/07\/htop-600x68.png 600w\" sizes=\"(max-width: 934px) 100vw, 934px\" title=\"Load Average. Como interpretar?\"><\/p>\n<p>No&nbsp;<strong>Load Average<\/strong>&nbsp;acima temos 0.41, 0.47 e 0.50.<br>\nOK, mas o que estes n&uacute;meros realmente significam?<br>\nAbaixo temos uma explica&ccedil;&atilde;o interessante sobre o significado do LA, retirada da <a href=\"https:\/\/tools.ietf.org\/html\/rfc546\">RFC546<\/a>:<\/p>\n<p><img loading=\"lazy\" class=\"size-full wp-image-202 aligncenter\" src=\"http:\/\/saperx.com.br\/blog\/wp-content\/uploads\/2018\/07\/Screenshot-from-2018-07-26-14-53-01.png\" alt=\"Screenshot from 2018 07 26 14 53 01 - Load Average. Como interpretar?\" width=\"569\" height=\"107\" srcset=\"https:\/\/blog.saperx.com.br\/wp-content\/uploads\/2018\/07\/Screenshot-from-2018-07-26-14-53-01.png 569w, https:\/\/blog.saperx.com.br\/wp-content\/uploads\/2018\/07\/Screenshot-from-2018-07-26-14-53-01-300x56.png 300w\" sizes=\"(max-width: 569px) 100vw, 569px\" title=\"Load Average. Como interpretar?\"><\/p>\n<p>Traduzindo: Load Average &eacute; a medida da demanda de CPU.<\/p>\n<p>Ou seja, este n&uacute;mero representa uma m&eacute;dia de demanda do CPU dentro do per&iacute;odo de 1 min, 5 min e 15 min, comparado com a quantidade de processos existentes e capacidade de processamento. No exemplo acima sabemos que a m&eacute;dia do LA dos &uacute;ltimos 15 minutos &eacute; de 0.50. E do &uacute;ltimo minuto 0.41. Ou seja, d&aacute; para concluir que a demanda do CPU est&aacute; diminu&iacute;ndo.<\/p>\n<p>Antigamente (nos kernels mais antigos) o load da m&aacute;quina era calculado apenas com base nos processos que estavam especificamente no <strong>status<\/strong> <strong>runnable<\/strong>. Ou seja, processos que est&atilde;o, de fato, sendo executados no processador. A&iacute; se criou a famosa frase &ldquo;Um load de at&eacute; 1.0 &eacute; bom para um processador single-core. J&aacute; com um processador quad-core um valor de at&eacute; 4.0 &eacute; bom&rdquo;. Esta n&atilde;o deixa de ser uma medida, por&eacute;m n&atilde;o &eacute; nada precisa e voc&ecirc; j&aacute; entender&aacute; o motivo.<\/p>\n<p>Existem diversos status poss&iacute;veis para um determinado processo aberto no servidor. Os principais s&atilde;o:<\/p>\n<p><img loading=\"lazy\" class=\"size-full wp-image-207 aligncenter\" src=\"http:\/\/saperx.com.br\/blog\/wp-content\/uploads\/2018\/07\/Screenshot-from-2018-07-31-15-22-29.png\" alt=\"Screenshot from 2018 07 31 15 22 29 - Load Average. Como interpretar?\" width=\"617\" height=\"152\" srcset=\"https:\/\/blog.saperx.com.br\/wp-content\/uploads\/2018\/07\/Screenshot-from-2018-07-31-15-22-29.png 617w, https:\/\/blog.saperx.com.br\/wp-content\/uploads\/2018\/07\/Screenshot-from-2018-07-31-15-22-29-300x74.png 300w, https:\/\/blog.saperx.com.br\/wp-content\/uploads\/2018\/07\/Screenshot-from-2018-07-31-15-22-29-600x148.png 600w\" sizes=\"(max-width: 617px) 100vw, 617px\" title=\"Load Average. Como interpretar?\"><\/p>\n<p>Voc&ecirc; pode verificar estes status de cada processo com o comando top, na coluna &ldquo;S&rdquo; (entre SHR e %CPU). Veja que v&aacute;rios est&atilde;o com o status &ldquo;S&rdquo; de interruptible sleep:<\/p>\n<p><img loading=\"lazy\" class=\"alignnone size-full wp-image-208 aligncenter\" src=\"http:\/\/saperx.com.br\/blog\/wp-content\/uploads\/2018\/07\/Screenshot-from-2018-07-31-15-37-44.png\" alt=\"Screenshot from 2018 07 31 15 37 44 - Load Average. Como interpretar?\" width=\"678\" height=\"242\" srcset=\"https:\/\/blog.saperx.com.br\/wp-content\/uploads\/2018\/07\/Screenshot-from-2018-07-31-15-37-44.png 678w, https:\/\/blog.saperx.com.br\/wp-content\/uploads\/2018\/07\/Screenshot-from-2018-07-31-15-37-44-300x107.png 300w, https:\/\/blog.saperx.com.br\/wp-content\/uploads\/2018\/07\/Screenshot-from-2018-07-31-15-37-44-600x214.png 600w\" sizes=\"(max-width: 678px) 100vw, 678px\" title=\"Load Average. Como interpretar?\"><\/p>\n<p>&Eacute; normal que a grande maioria dos processos estejam no status &ldquo;S&rdquo;, que s&atilde;o processos que est&atilde;o &ldquo;dormindo&rdquo; at&eacute; que algum evento ocorra para serem processados e ir para o status &ldquo;R&rdquo;. Nossos processadores atualmente s&atilde;o extremamente r&aacute;pidos, fazendo com que a maioria dos processos no status &ldquo;R&rdquo; rapidamente mudem para &ldquo;S&rdquo; onde passam a maior parte do tempo.<\/p>\n<p>Como exemplo acima temos o Google Chrome (processo com nome &ldquo;chrome&rdquo;). O navegador fica aberto, mas geralmente est&aacute; aguardando algum evento para ser enviado para o processador e entrar no status &ldquo;runnable&rdquo;.<\/p>\n<p>Com o passar do tempo, nos kernels mais novos, tamb&eacute;m foram adicionados no c&aacute;lculo do LA os processos com status de&nbsp;<strong>uninterruptible sleep<\/strong>, que s&atilde;o os processos que est&atilde;o aguardando algum tipo de I\/O (seja de disco, rede, mem&oacute;ria, etc).<br>\nNeste momento o LA deixou de ser apenas uma medida da &ldquo;demanda de CPU&rdquo; e passou a ser mais uma medida de &ldquo;<strong>demanda do sistema<\/strong>&ldquo;. Pois se v&aacute;rios processos estiverem aguardando <strong>disco<\/strong> ou <strong>mem&oacute;ria<\/strong> ou <strong>rede<\/strong> ou <strong>CPU<\/strong>, o load ter&aacute; um valor alto.&nbsp;Ou seja, se um servidor tiver muitos processos aguardando disco, voc&ecirc; ter&aacute; um alto valor de LA e possivelmente um baixo processamento.<\/p>\n<p>Resumidamente um valor do LA alto, de forma isolada, &eacute; apenas um indicativo &ndash; um alerta amarelo &ndash; de que algo pode estar errado com seu sistema operacional ou hardware, devendo ser analisado com outras ferramentas para descobrir o que est&aacute; causando um valor alto.<\/p>\n<p>Por exemplo: Um disco com problemas de I\/O pode causar um alto valor de load e um baixo consumo de CPU.<\/p>\n<p>Portanto, obrigatoriamente, se faz necess&aacute;rio realizar uma an&aacute;lise em conjunto com outras ferramentas para definir se o valor &eacute; ou n&atilde;o um indicativo de anormalidade espec&iacute;fica de CPU ou se existem outros fatores envolvidos.<\/p>\n<p>Fonte:<\/p>\n<p>http:\/\/www.brendangregg.com\/blog\/2017-08-08\/linux-load-averages.html<\/p>\n<p>https:\/\/tools.ietf.org\/html\/rfc546<\/p>\n<p>http:\/\/blog.scoutapp.com\/articles\/2009\/07\/31\/understanding-load-averages<\/p>\n\n","protected":false},"excerpt":{"rendered":"<p>Qual a rela&ccedil;&atilde;o do load apresentado no sistema operacional em uma m&aacute;quina? 1.0 &eacute; bom? 8.0 &eacute; alto? Como saber o valor ideal? Devemos seguir a ideia de quanto menor o valor &eacute; melhor e quanto maior &eacute; pior? Definitivamente a literatura n&atilde;o &eacute; clara quando queremos saber detalhes sobre o &#8220;Load Average&#8221; (chamarei aqui [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":664,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[43,9],"tags":[13,11,10,12,14],"_links":{"self":[{"href":"https:\/\/blog.saperx.com.br\/index.php\/wp-json\/wp\/v2\/posts\/197"}],"collection":[{"href":"https:\/\/blog.saperx.com.br\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.saperx.com.br\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.saperx.com.br\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.saperx.com.br\/index.php\/wp-json\/wp\/v2\/comments?post=197"}],"version-history":[{"count":20,"href":"https:\/\/blog.saperx.com.br\/index.php\/wp-json\/wp\/v2\/posts\/197\/revisions"}],"predecessor-version":[{"id":767,"href":"https:\/\/blog.saperx.com.br\/index.php\/wp-json\/wp\/v2\/posts\/197\/revisions\/767"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.saperx.com.br\/index.php\/wp-json\/wp\/v2\/media\/664"}],"wp:attachment":[{"href":"https:\/\/blog.saperx.com.br\/index.php\/wp-json\/wp\/v2\/media?parent=197"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.saperx.com.br\/index.php\/wp-json\/wp\/v2\/categories?post=197"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.saperx.com.br\/index.php\/wp-json\/wp\/v2\/tags?post=197"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}