{"id":541,"date":"2012-10-04T15:00:39","date_gmt":"2012-10-04T18:00:39","guid":{"rendered":"http:\/\/blog.dialhost.com.br\/?p=541"},"modified":"2012-10-04T15:00:39","modified_gmt":"2012-10-04T18:00:39","slug":"otimizando-desempenho-site","status":"publish","type":"post","link":"https:\/\/www.dialhost.com.br\/blog\/otimizando-desempenho-site\/","title":{"rendered":"Otimizando o desempenho do site"},"content":{"rendered":"<figure id=\"attachment_555\" aria-describedby=\"caption-attachment-555\" style=\"width: 700px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" class=\"size-full wp-image-555\" title=\"otimizando_sites\" alt=\"Otimizando Sites\" src=\"http:\/\/blog.dialhost.com.br\/wp-content\/uploads\/2012\/10\/otimizando_sites1.jpg\" width=\"700\" height=\"260\" \/><figcaption id=\"caption-attachment-555\" class=\"wp-caption-text\">Gr\u00e1fico Ilustrativo<\/figcaption><\/figure>\n<p>Hoje, se voc\u00ea pesquisar no Google sobre otimiza\u00e7\u00e3o de sites,\u00a0 ir\u00e1 encontrar uma pancada de posts em diversos blogs pelo mundo lhe ensinando t\u00e9cnicas de cache, altera\u00e7\u00e3o de alguns comportamentos do site pelo cabe\u00e7alho do HTTP, criar sprites com as imagens, etc&#8230;<br \/>\nBom, apesar da cl\u00e1ssica &#8220;cada caso \u00e9 um caso&#8221;, pelo tempo que tenho dentro da DialHost analisando casos de clientes legando lentid\u00e3o no site acabo por apresentar aqui algumas dicas essenciais para melhorar a capacidade de usu\u00e1rios suportados simultaneamente por um sistema web e como reduzir o tr\u00e1fego de dados aplicando algumas diretivas. Lembrando que n\u00e3o focarei em implementa\u00e7\u00f5es, pois h\u00e1 refer\u00eancias o suficiente no final do artigo.<\/p>\n<div id=\"toc_container\" class=\"have_bullets\"><p class=\"toc_title\">T&oacute;picos<\/p><ul class=\"toc_list\"><li><a href=\"#otimizando-suas-imagens\">Otimizando suas imagens<\/a><\/li><li><a href=\"#preocupe-se-com-o-protocolo-http\">Preocupe-se com o protocolo HTTP<\/a><\/li><li><a href=\"#em-producao-reduza-seus-arquivos\">Em produ\u00e7\u00e3o, reduza seus arquivos<\/a><\/li><li><a href=\"#utilize-dominios-paralelos-para-requisicoes-estaticas\">Utilize dom\u00ednios paralelos para requisi\u00e7\u00f5es est\u00e1ticas<\/a><\/li><\/ul><\/div>\n<h2><span id=\"otimizando-suas-imagens\">Otimizando suas imagens<\/span><\/h2>\n<p>Se estiver utilizando softwares para edi\u00e7\u00e3o de imagens, procure sempre salv\u00e1-las com qualidade consider\u00e1vel e no tamanho exato a qual ser\u00e3o utilizadas, ou seja, nada de redimensionamentos no HTML. Para montar o layout, d\u00ea prefer\u00eancia aos sprites pois haver\u00e1 apenas uma requisi\u00e7\u00e3o ao inv\u00e9s de v\u00e1rias (as quais exigem mais do servidor causando poss\u00edveis lentid\u00f5es) e voc\u00ea evita que alguns elementos ass\u00edncronos sejam carregados enquanto o usu\u00e1rio navega na p\u00e1gina. Tome cuidado com imagens que voc\u00ea realmente quer que sejam indexadas pelo Google, nesse caso o sprite j\u00e1 n\u00e3o ajuda tanto. Utilize tamb\u00e9m compressores de imagem (Ex: <a title=\"PngCrush\" href=\"http:\/\/pmt.sourceforge.net\/pngcrush\/\" target=\"_blank\" rel=\"noopener noreferrer\">pngcrush<\/a>, <a title=\"JpegTran\" href=\"http:\/\/jpegclub.org\/jpegtran\/\" target=\"_blank\" rel=\"noopener noreferrer\">jpegtran<\/a>, etc), eles salvam mais alguns poucos bytes.<\/p>\n<h2><span id=\"preocupe-se-com-o-protocolo-http\">Preocupe-se com o protocolo HTTP<\/span><\/h2>\n<p>Se voc\u00ea \u00e9 desenvolvedor, deve voltar sua aten\u00e7\u00e3o ao principal protocolo em que trabalha. Os cabe\u00e7alhos oferecem diversos par\u00e2metros para controlar seu sistema durante o carregamento das p\u00e1ginas. S\u00e3o par\u00e2metros importantes: <em>Cache-Control<\/em> e <em>Last-Modified<\/em> para controle de cache e <em>Content-Encoding<\/em> para compress\u00e3o.<\/p>\n<h2><span id=\"em-producao-reduza-seus-arquivos\">Em produ\u00e7\u00e3o, reduza seus arquivos<\/span><\/h2>\n<p>A n\u00e3o ser que voc\u00ea queira mostrar seu CSS, JavaScript e HTML para desenvolvedores, comprense-os. N\u00e3o h\u00e1 necessidade de arquivos bem estruturados para produ\u00e7\u00e3o, portanto deixe seus respectivos conte\u00fados em uma linha apenas, assim voc\u00ea salva alguns bons bytes. Um bom exemplo online \u00e9 o <a title=\"JsCompress\" href=\"http:\/\/jscompress.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">JsCompress<\/a>. Teste um javascript seu nele e veja a redu\u00e7\u00e3o ocorrida.<\/p>\n<h2><span id=\"utilize-dominios-paralelos-para-requisicoes-estaticas\">Utilize dom\u00ednios paralelos para requisi\u00e7\u00f5es est\u00e1ticas<\/span><\/h2>\n<p>Um impacto para os usu\u00e1rios quando requisitam uma p\u00e1gina \u00e9 o seu n\u00famero de componentes. Com cada componente necessitando de uma nova requisi\u00e7\u00e3o HTTP e a RFC 2616 (HTTP\/1.1) sugerindo que apenas duas requisi\u00e7\u00f5es devem ser processadas em paralelo por hostname, surge a necessidade de maior aten\u00e7\u00e3o para sites grandes em quest\u00e3o de arquivos por p\u00e1gina. Uma boa sugest\u00e3o s\u00e3o subdom\u00ednios para arquivos est\u00e1ticos como imagens. Ex: http:\/\/img.example.com\/ cont\u00e9m imagens est\u00e1ticas para o site http:\/\/example.com\/<\/p>\n<p>Como disse anteriormente, n\u00e3o foquei em particularidades das N existentes pois al\u00e9m das refer\u00eancias abaixo, voc\u00ea n\u00e3o precisa suar a camisa para implementar todas as otimiza\u00e7\u00f5es que conhece caso seu sistema n\u00e3o precise. Este \u00e9 apenas um guia geral de onde aconselho uma aten\u00e7\u00e3o maior ap\u00f3s o site entrar em ambiente de produ\u00e7\u00e3o.<\/p>\n<p>O conte\u00fado pesado, com exemplos de implementa\u00e7\u00f5es, detalhes de cada par\u00e2metro e outras dicas est\u00e3o listados nos 3 guias que mais me auxiliam nestas quest\u00f5es. S\u00e3o guias do Google e Yahoo! de melhores pr\u00e1ticas, h\u00e1 muita informa\u00e7\u00e3o boa l\u00e1. D\u00ea uma passada e salve no seu Delicious:<br \/>\n<a href=\"https:\/\/developers.google.com\/speed\/docs\/best-practices\/caching\" target=\"_blank\" rel=\"noopener noreferrer\">Melhores pr\u00e1ticas de Cache do Google<\/a><br \/>\n<a href=\"https:\/\/developers.google.com\/speed\/docs\/best-practices\/payload\" target=\"_blank\" rel=\"noopener noreferrer\">Melhores pr\u00e1ticas de PayLoads<\/a><br \/>\n<a href=\"http:\/\/developer.yahoo.com\/performance\/\" target=\"_blank\" rel=\"noopener noreferrer\">Guia de Performance do Yahoo!<\/a><\/p>\n<p>Ah, uma boa dica tamb\u00e9m \u00e9 o plugin <a title=\"Google Developers - PageSpeed\" href=\"https:\/\/developers.google.com\/speed\/pagespeed\/\" target=\"_blank\" rel=\"noopener noreferrer\">PageSpeed<\/a> que pode ser incorporado ao seu Firefox ou Chrome e lhe auxiliar bastante para melhorar a performance das suas p\u00e1ginas, mas lembre de n\u00e3o se limitar a ele.<\/p>\n<p><a title=\"Hospedagem DialHost\" href=\"http:\/\/www.dialhost.com.br\/hospedagem-compartilhada\/hospedagem-linux\/?utm_source=blog%2Bdialhost&amp;utm_medium=Blog&amp;utm_term=hospedagem%2Bde%2Bsites&amp;utm_campaign=frases_blog\" target=\"_blank\" rel=\"noopener noreferrer\">Com a DialHost voc\u00ea tem os melhores planos de hospedagem de sites e atendimento 24h.Confira!<\/a><\/p>\n<p>&nbsp;\t\t\t\t<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hoje, se voc\u00ea pesquisar no Google sobre otimiza\u00e7\u00e3o de sites,\u00a0 ir\u00e1 encontrar uma pancada de posts em diversos blogs pelo mundo lhe ensinando t\u00e9cnicas de cache, altera\u00e7\u00e3o de alguns comportamentos do site pelo cabe\u00e7alho do HTTP, criar sprites com as imagens, etc&#8230; Bom, apesar da cl\u00e1ssica &#8220;cada caso \u00e9 um caso&#8221;, pelo tempo que tenho &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/www.dialhost.com.br\/blog\/otimizando-desempenho-site\/\" class=\"more-link\">Continue lendo<span class=\"screen-reader-text\"> &#8220;Otimizando o desempenho do site&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":552,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[12],"tags":[75,158,161,173,203],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v15.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Otimizando o desempenho do site - Blog DialHost<\/title>\n<meta name=\"description\" content=\"Otimizando o tempo de resposta e o tr\u00e1fego gerado pelas requisi\u00e7\u00f5es. Descubra como resolver uma das principais preocupa\u00e7\u00f5es dos desenvolvedores web.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dialhost.com.br\/blog\/otimizando-desempenho-site\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Otimizando o desempenho do site - Blog DialHost\" \/>\n<meta property=\"og:description\" content=\"Otimizando o tempo de resposta e o tr\u00e1fego gerado pelas requisi\u00e7\u00f5es. Descubra como resolver uma das principais preocupa\u00e7\u00f5es dos desenvolvedores web.\" \/>\n<meta property=\"og:url\" content=\"\/blog\/otimizando-desempenho-site\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog DialHost\" \/>\n<meta property=\"article:publisher\" content=\"http:\/\/www.facebook.com\/DialHost\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/DialHost\" \/>\n<meta property=\"article:published_time\" content=\"2012-10-04T18:00:39+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dialhost.com.br\/blog\/wp-content\/uploads\/2019\/04\/og-image.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@dialhost\" \/>\n<meta name=\"twitter:site\" content=\"@dialhost\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#organization\",\"name\":\"DialHost Internet\",\"url\":\"https:\/\/www.dialhost.com.br\/blog\/\",\"sameAs\":[\"http:\/\/www.facebook.com\/DialHost\",\"https:\/\/www.instagram.com\/dialhost_oficial\/\",\"https:\/\/www.linkedin.com\/company\/dialhost-internet\",\"https:\/\/www.youtube.com\/channel\/UCAiqiX8IiqTSfA8wQhpzgXQ\",\"https:\/\/twitter.com\/dialhost\"],\"logo\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#logo\",\"inLanguage\":\"pt-BR\",\"url\":\"https:\/\/www.dialhost.com.br\/blog\/wp-content\/uploads\/2019\/03\/marca-dialhost.png\",\"width\":81,\"height\":81,\"caption\":\"DialHost Internet\"},\"image\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#logo\"}},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#website\",\"url\":\"https:\/\/www.dialhost.com.br\/blog\/\",\"name\":\"Blog DialHost\",\"description\":\"Os melhores conte\\u00fados sobre Desenvolvimento Web, Marketing e Neg\\u00f3cios\",\"publisher\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"https:\/\/www.dialhost.com.br\/blog\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/otimizando-desempenho-site\/#primaryimage\",\"inLanguage\":\"pt-BR\",\"url\":\"\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/otimizando-desempenho-site\/#webpage\",\"url\":\"https:\/\/www.dialhost.com.br\/blog\/otimizando-desempenho-site\/\",\"name\":\"Otimizando o desempenho do site - Blog DialHost\",\"isPartOf\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/otimizando-desempenho-site\/#primaryimage\"},\"datePublished\":\"2012-10-04T18:00:39+00:00\",\"dateModified\":\"2012-10-04T18:00:39+00:00\",\"description\":\"Otimizando o tempo de resposta e o tr\\u00e1fego gerado pelas requisi\\u00e7\\u00f5es. Descubra como resolver uma das principais preocupa\\u00e7\\u00f5es dos desenvolvedores web.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/otimizando-desempenho-site\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dialhost.com.br\/blog\/otimizando-desempenho-site\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/otimizando-desempenho-site\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"item\":{\"@type\":\"WebPage\",\"@id\":\"\/blog\/\",\"url\":\"\/blog\/\",\"name\":\"In\\u00edcio\"}},{\"@type\":\"ListItem\",\"position\":2,\"item\":{\"@type\":\"WebPage\",\"@id\":\"\/blog\/otimizando-desempenho-site\/\",\"url\":\"\/blog\/otimizando-desempenho-site\/\",\"name\":\"Otimizando o desempenho do site\"}}]},{\"@type\":\"Article\",\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/otimizando-desempenho-site\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/otimizando-desempenho-site\/#webpage\"},\"author\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#\/schema\/person\/a0b10cbe35449dea173a06d4664f9fcc\"},\"headline\":\"Otimizando o desempenho do site\",\"datePublished\":\"2012-10-04T18:00:39+00:00\",\"dateModified\":\"2012-10-04T18:00:39+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/otimizando-desempenho-site\/#webpage\"},\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/otimizando-desempenho-site\/#primaryimage\"},\"keywords\":\"desempenho,noticias,otimiza\\u00e7\\u00e3o,programa\\u00e7\\u00e3o,tecnologia\",\"articleSection\":\"Tecnologias\",\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.dialhost.com.br\/blog\/otimizando-desempenho-site\/#respond\"]}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#\/schema\/person\/a0b10cbe35449dea173a06d4664f9fcc\",\"name\":\"DialHost Internet\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#personlogo\",\"inLanguage\":\"pt-BR\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/05feec2f99aef1c42b09aeaa637ee66f?s=96&r=g\",\"caption\":\"DialHost Internet\"},\"description\":\"H\\u00e1 mais de 18 anos proporcionando um servi\\u00e7o de hospedagem de sites voltado 100% na Experi\\u00eancia e Sucesso do Cliente, prezando a qualidade, transpar\\u00eancia e seguran\\u00e7a.\",\"sameAs\":[\"https:\/\/www.facebook.com\/DialHost\",\"https:\/\/www.instagram.com\/dialhost_oficial\/\",\"https:\/\/www.linkedin.com\/company\/dialhost-internet\",\"https:\/\/twitter.com\/dialhost\",\"https:\/\/www.youtube.com\/channel\/UCAiqiX8IiqTSfA8wQhpzgXQ\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","_links":{"self":[{"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/posts\/541"}],"collection":[{"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/comments?post=541"}],"version-history":[{"count":0,"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/posts\/541\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/media\/552"}],"wp:attachment":[{"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/media?parent=541"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/categories?post=541"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/tags?post=541"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}