{"id":6570,"date":"2014-06-16T15:03:25","date_gmt":"2014-06-16T18:03:25","guid":{"rendered":"https:\/\/king.host\/blog\/?p=6570"},"modified":"2024-06-04T09:05:57","modified_gmt":"2024-06-04T12:05:57","slug":"aumente-sua-performance-magento-otimizando-recursos-servidor","status":"publish","type":"post","link":"https:\/\/king.host\/blog\/tecnologia\/aumente-sua-performance-magento-otimizando-recursos-servidor\/","title":{"rendered":"Aumente sua performance no Magento otimizando recursos do servidor"},"content":{"rendered":"<p style=\"text-align: center;\"><a href=\"https:\/\/king.host\/blog\/wp-content\/uploads\/2014\/06\/2014-06-16-FEED-Imasters-Magento-1.png\" rel=\"attachment wp-att-6571\"><img fetchpriority=\"high\" decoding=\"async\" class=\"size-medium wp-image-6571 aligncenter\" alt=\"2014-06-16 - FEED Imasters - Magento (1)\" src=\"https:\/\/king.host\/blog\/wp-content\/uploads\/2014\/06\/2014-06-16-FEED-Imasters-Magento-1-300x300.png\" width=\"300\" height=\"300\" title=\"\" srcset=\"https:\/\/cdn-cms.king.host\/blog-hlg\/uploads\/2014\/06\/2014-06-16-FEED-Imasters-Magento-1-300x300.png 300w, https:\/\/cdn-cms.king.host\/blog-hlg\/uploads\/2014\/06\/2014-06-16-FEED-Imasters-Magento-1-150x150.png 150w, https:\/\/cdn-cms.king.host\/blog-hlg\/uploads\/2014\/06\/2014-06-16-FEED-Imasters-Magento-1-400x400.png 400w, https:\/\/cdn-cms.king.host\/blog-hlg\/uploads\/2014\/06\/2014-06-16-FEED-Imasters-Magento-1-177x177.png 177w, https:\/\/cdn-cms.king.host\/blog-hlg\/uploads\/2014\/06\/2014-06-16-FEED-Imasters-Magento-1-380x380.png 380w, https:\/\/cdn-cms.king.host\/blog-hlg\/uploads\/2014\/06\/2014-06-16-FEED-Imasters-Magento-1.png 500w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Magento \u00e9 uma plataforma de com\u00e9rcio eletr\u00f4nico extremamente robusta e, consequentemente, demanda recursos consider\u00e1veis do servidor. O tempo que o usu\u00e1rio vai ficar na p\u00e1gina, o tamanho das imagens que voc\u00ea utiliza, tudo isso acaba consumindo recursos. Um simples site em Magento vai apenas enviar e receber dados dos clientes. J\u00e1 uma loja do tipo leil\u00e3o virtual vai enviar e receber constantemente muitos dados dos usu\u00e1rios.<\/p>\n<p>Este tipo de abertura de comunica\u00e7\u00e3o exige uma atualiza\u00e7\u00e3o de dados do servidor a cada segundo. Por isso \u00e9 importante que voc\u00ea utilize alguns recursos de otimiza\u00e7\u00e3o para diminuir a demanda exigida do servidor, aumentando ainda mais a performance do seu site!<\/p>\n<p><strong>M\u00f3dulos<\/strong><\/p>\n<p>Voc\u00ea deve analisar se os demais m\u00f3dulos que est\u00e3o sendo carregados realmente est\u00e3o sendo usados. Caso contr\u00e1rio, simplesmente os desabilite. Isso deve ser feito para que a cada requisi\u00e7\u00e3o o seu Apache n\u00e3o utilize recursos desnecess\u00e1rios do servidor, alocando mais mem\u00f3ria do que realmente deveria utilizar e consumindo mais CPU do que deveria.<\/p>\n<p>O Magento exige alguns m\u00f3dulos do Apache para o seu funcionamento. Os principais s\u00e3o:<\/p>\n<p>\u2022 expires_module<\/p>\n<p>\u2022 deflate_module<\/p>\n<p>\u2022 mime_module<\/p>\n<p>\u2022 dir_module<\/p>\n<p>\u2022 rewrite_module<\/p>\n<p>\u2022 authz_host_module<\/p>\n<p>\u2022 authz_user_module<\/p>\n<p>\u2022 file_cache_module<\/p>\n<p>\u2022 authn_alias_module<\/p>\n<p>\u2022 mime_magic_module<\/p>\n<p>\u2022 log_config_module<\/p>\n<p>\u2022 headers_module<\/p>\n<p>\u2022 alias_module<\/p>\n<p>\u2022 setenvif_module<\/p>\n<p>\u2022 autoindex_module<\/p>\n<p>\u2022 negotiation_module<\/p>\n<p>\u2022 suexec_module<\/p>\n<p><strong><span style=\"line-height: 1.5em;\">Cache no Magento<\/span><\/strong><\/p>\n<p>O Magento conta com um sistema de gerenciamento de cache interno, a qual por padr\u00e3o n\u00e3o esta ativado, voc\u00ea deve ativa-lo, tornando assim menos pesado para o servidor o seu site, visto que n\u00e3o ser\u00e1 necessario carregar o conteudo estatico do site diversas vezes, mantendo ele em cache.<\/p>\n<p>O gerenciamento de cache do Magento fica em Sistema -&gt; Gerenciamento de Cache no seu painel de administra\u00e7\u00e3o. Voc\u00ea tamb\u00e9m pode apagar todas as pastas e arquivos que est\u00e3o em \/var\/cache e \/var\/sessions .<\/p>\n<p>H\u00e1 tamb\u00e9m outros tipos de cache que s\u00e3o recomend\u00e1veis e que tornar\u00e3o sua loja mais leve, como no apache a utiliza\u00e7\u00e3o do modulo Opcache, que ir\u00e1 pr\u00e9-compilar scripts PHP e os armazenar em mem\u00f3ria e tamb\u00e9m a utiliza\u00e7\u00e3o de cache no banco de dados Mysql Otimizando os par\u00e2metros Query_cache_size e Query_cache_limit conforme a infraestrutura de seu servidor Mysql.<\/p>\n<p><strong>Tratamento de Conex\u00f5es e Requisi\u00e7\u00f5es<\/strong><\/p>\n<p>Um ponto crucial na otimiza\u00e7\u00e3o do Apache em seu servidor \u00e9 a configura\u00e7\u00e3o correta dos par\u00e2metros respons\u00e1veis por determinar como o webserver ir\u00e1 tratar as requisi\u00e7\u00f5es do site. Voc\u00ea deve se concentrar nos seguintes par\u00e2metros:<\/p>\n<p><strong>\u2022 MaxClients:<\/strong> controla a quantidade m\u00e1xima de processos do Apache que poder\u00e3o ser executadas pelo sistema operacional. Os casos variam, mas um exemplo gen\u00e9rico de configura\u00e7\u00e3o para esse par\u00e2metro \u00e9 de 150 para cada 1GB de RAM. Aten\u00e7\u00e3o: n\u00e3o considere o valor total de sua RAM instalada pois o servidor ir\u00e1 rodar outros processos que tamb\u00e9m utilizam mem\u00f3ria. Ent\u00e3o, se o seu servidor possui apenas 1GB de RAM coloque um valor entre 60 e 100 para evitar problemas com estouro de mem\u00f3ria;<\/p>\n<p><strong>\u2022 KeepAlive:<\/strong> \u00e9 importante manter esse par\u00e2metro como ON pois \u00e9 ele que garante que v\u00e1rias requisi\u00e7\u00f5es sejam processadas dentro da mesma conex\u00e3o, economizando recursos do servidor;<\/p>\n<p><strong>\u2022 MaxKeepAliveRequests:<\/strong> indica quantas requisi\u00e7\u00f5es devem ser tratadas por requisi\u00e7\u00e3o. Um bom valor \u00e9 2000, mas novamente isso depende da sua quantidade de mem\u00f3ria;<\/p>\n<p><strong>\u2022 KeepAliveTimeout:<\/strong> aqui voc\u00ea informa o n\u00famero de segundos que a pr\u00f3xima requisi\u00e7\u00e3o do cliente deve esperar para ser processada. N\u00e3o informe uma valor muito alto para n\u00e3o deixar as requisi\u00e7\u00f5es esperando demais na fila. Valor ideal: 15. Existem outros par\u00e2metros do Apache mas alterando apenas esses par\u00e2metros voc\u00ea j\u00e1 ter\u00e1 um bom resultado em performance.<\/p>\n<p><strong>.htaccess<\/strong><\/p>\n<p>O arquivo .htaccess padr\u00e3o do Magento possui praticamente tudo sobre aumento de performance, mas todas essas configura\u00e7\u00f5es v\u00eam comentadas. A primeira delas e com certeza a mais importante \u00e9 a compress\u00e3o de sa\u00edda ou Output Compression.<\/p>\n<p>Nesse ponto \u00e9 feito um uso bastante intensivo do mod_deflate do Apache para compress\u00e3o de arquivos texto\/html, css e javascript antes de envi\u00e1-los ao navegador. Isto ir\u00e1 fazer com que o download seja menor e como consequ\u00eancia baixado mais rapidamente.<\/p>\n<p>Outro recurso \u00e9 ativar a expira\u00e7\u00e3o de cabe\u00e7alhos ouExpires Headers que faz uso de rotinas do mod_expires do Apache. Ativar esse recurso informa aos navegadores quanto tempo os componentes de uma p\u00e1gina (imagens, CSS, etc) devem ficar em cache.<\/p>\n<p>Por \u00faltimo, voc\u00ea deve desabilitar as ETags. Esse recurso \u00e9 utilizados pelos navegadores para validar componentes em cache de uma p\u00e1gina em visitas futuras, por\u00e9m isso compromete bastante a performance de um site.<\/p>\n<p><strong>Admin<\/strong><\/p>\n<p>Muitos recursos presentes no painel administrativo do Magento s\u00e3o eficazes no aumento da performance de uma loja Magento.<\/p>\n<p><strong>Indexa\u00e7\u00e3o:<\/strong> Essa \u00e9 uma forma de encontrar maior seguran\u00e7a e agilidade as informa\u00e7\u00f5es armazenadas pelo sistema. Procure manter sempre as informa\u00e7\u00f5es indexadas no seu Gerenciador de \u00cdndices.<\/p>\n<p><strong>Combina\u00e7\u00e3o de arquivos CSS e JS:<\/strong> voc\u00ea encontra este recurso acessando Sistema -&gt; Configura\u00e7\u00e3o -&gt; Desenvolvedor nas abas Configura\u00e7\u00f5es de Javascript e Configura\u00e7\u00f5es de CSS. Em ambas basta atribuir o valor Sim aos campos Mesclar Arquivos Javascript e Mesclar Arquivos CSS respectivamente. Salve as configura\u00e7\u00f5es e limpe o cache. Todos os arquivos CSS e JS ser\u00e3o combinados em apenas um arquivo e todos os JS. Com isso o navegador far\u00e1 uma \u00fanica requisi\u00e7\u00e3o para cada tipo de conte\u00fado.<\/p>\n<p><strong>Habilitar o cat\u00e1logo flat de produtos e categorias:<\/strong> Essa configura\u00e7\u00e3o ir\u00e1 criar uma s\u00e9rie de tabelas no banco de dados onde as informa\u00e7\u00f5es de produtos e categorias estar\u00e3o organizadas de forma a serem obtidas mais rapidamente pelo sistema consumindo o m\u00ednimo de recursos do servidor poss\u00edveis.<\/p>\n<p>Para visualiz\u00e1-la v\u00e1 em Sistema -&gt; Configura\u00e7\u00e3o -&gt; Cat\u00e1logo e na aba Frontend marque Sim nas op\u00e7\u00f5es Usar Cat\u00e1logo de Categoria Unificado e Usar Cat\u00e1logo de Produtos Unificado. Ap\u00f3s salvar as configura\u00e7\u00f5es limpe o cache da sua loja.<\/p>\n<p><strong>Compila\u00e7\u00e3o:<\/strong> com ele voc\u00ea cria a estrutura de arquivos do Magento de forma que n\u00e3o seja necess\u00e1rio ao interpretador de c\u00f3digos (PHP) navegar por v\u00e1rias pastas at\u00e9 encontrar o arquivo de sistema necess\u00e1rio, pois tudo estar\u00e1 em uma \u00fanica pasta. Isso ir\u00e1 reduzir absurdamente o n\u00famero de leituras ao sistema de arquivos e voc\u00ea acaba ganhando em performance e economia de recursos do servidor.<\/p>\n<p><strong>CDN (Content Delivery Network):<\/strong> recurso exclusivo para entrega de arquivos est\u00e1ticos &#8211; imagens, CSS, JS, etc. Utilizando esse tipo de recurso voc\u00ea ir\u00e1 ter uma resposta mais r\u00e1pida do dom\u00ednio do site j\u00e1 que essas requisi\u00e7\u00f5es ser\u00e3o feitas a um outro dom\u00ednio. Isso diminui o tempo de download da sua p\u00e1gina (html) entregando o conte\u00fado mais rapidamente ao usu\u00e1rio.<\/p>\n<p><strong>Manuten\u00e7\u00e3o do Banco de Dados<\/strong><\/p>\n<p>O banco de dados pesado pode ser um dos respons\u00e1veis por tornar os sites Magento lentos e dif\u00edcil de usar para enviar\/recuperar dados. Para reduzir o tamanho do banco de dados voc\u00ea deve:<\/p>\n<p>Logs de banco de dados &#8211; o Magento utiliza v\u00e1rias tabelas para registro. Embora o registro seja fundamental para voc\u00ea saber o que existe na sua loja e o que est\u00e1 acontecendo, os logs podem se tornar grandes muito rapidamente. Por isso, fazer a manuten\u00e7\u00e3o regularmente pode ser bem \u00fatil.<\/p>\n<p>Abaixo as tabelas para registro:<\/p>\n<p>log_customer<\/p>\n<p>log_visitor<\/p>\n<p>log_visitor_info<\/p>\n<p>log_url<\/p>\n<p>log_url_info<\/p>\n<p>log_quote<\/p>\n<p>report_viewed_product_index<\/p>\n<p>report_compared_product_index<\/p>\n<p>report_event<\/p>\n<p>catalog_compare_item<\/p>\n<p>Limpeza de registros do banco de dados usando Magento Admin<\/p>\n<p>V\u00e1 em Sistema &gt; Configura\u00e7\u00e3o. \u00c0 esquerda acesse a op\u00e7\u00e3o Avan\u00e7ado \u2013 Sistema &#8211; Limpar log. Mude &#8220;Ativar Log de Limpeza&#8221; para SIM, configure o \u201cSalvar Log\u201d para 14 dias e salve as altera\u00e7\u00f5es.<\/p>\n<p><em>Certifique-se de fazer backup de seu banco de dados antes de realizar as altera\u00e7\u00f5es.<\/em><\/p>\n<p><span style=\"line-height: 1.5em;\"><strong>Ativar o compilador que vem com o Magento por padr\u00e3o:<\/strong> acesse no painel administrativo a op\u00e7\u00e3o Sistema -&gt; Ferramentas -&gt; Compila\u00e7\u00e3o. Basta clicar em Ativar -&gt; Processo Run Compilation. Esta op\u00e7\u00e3o compila todos os arquivos de instala\u00e7\u00e3o do Magento e cria um \u00fanico caminho de inclus\u00e3o. Isso pode acelerar as p\u00e1ginas entre 25% e 50%.<\/span><\/p>\n<p><strong>Habilite apenas o que vai usar:<\/strong> em alguns pontos do sistema o Magento vem pr\u00e9 configurado de f\u00e1brica, como por exemplo no uso de moedas pelo sistema. Se voc\u00ea vai usar apenas a moeda Real Brasileiro, n\u00e3o tem por que carregar centenas de moedas na inicializa\u00e7\u00e3o da vari\u00e1vel moedas.<\/p>\n<p>Muitos lojistas tem pressa em iniciar as atividades de sua loja virtual e podem acabar esquecendo que \u00e9 preciso investir em performance. Uma loja bem configurada pode conseguir uma performance infinitamente superior. Certamente voc\u00ea n\u00e3o quer que o visitante tenha que esperar a p\u00e1gina carregar para poder visualizar os produtos que ele procura!<\/p>\n","protected":false},"excerpt":{"rendered":"<p style=\"text-align: center;\"><a href=\"https:\/\/king.host\/blog\/wp-content\/uploads\/2014\/06\/2014-06-16-FEED-Imasters-Magento-1.png\" rel=\"attachment wp-att-6571\"><img decoding=\"async\" class=\"size-medium wp-image-6571 aligncenter\" alt=\"2014-06-16 - FEED Imasters - Magento (1)\" src=\"https:\/\/king.host\/blog\/wp-content\/uploads\/2014\/06\/2014-06-16-FEED-Imasters-Magento-1-300x300.png\" width=\"300\" height=\"300\" srcset=\"https:\/\/cdn-cms.king.host\/blog-hlg\/uploads\/2014\/06\/2014-06-16-FEED-Imasters-Magento-1-300x300.png 300w, https:\/\/cdn-cms.king.host\/blog-hlg\/uploads\/2014\/06\/2014-06-16-FEED-Imasters-Magento-1-150x150.png 150w, https:\/\/cdn-cms.king.host\/blog-hlg\/uploads\/2014\/06\/2014-06-16-FEED-Imasters-Magento-1-400x400.png 400w, https:\/\/cdn-cms.king.host\/blog-hlg\/uploads\/2014\/06\/2014-06-16-FEED-Imasters-Magento-1-177x177.png 177w, https:\/\/cdn-cms.king.host\/blog-hlg\/uploads\/2014\/06\/2014-06-16-FEED-Imasters-Magento-1-380x380.png 380w, https:\/\/cdn-cms.king.host\/blog-hlg\/uploads\/2014\/06\/2014-06-16-FEED-Imasters-Magento-1.png 500w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Magento \u00e9 uma plataforma de com\u00e9rcio eletr\u00f4nico extremamente robusta e, consequentemente, demanda recursos consider\u00e1veis do servidor. O tempo que o usu\u00e1rio vai ficar na p\u00e1gina, o tamanho das imagens que voc\u00ea utiliza, tudo isso acaba consumindo recursos. Por isso, \u00e9 importante que voc\u00ea utilize alguns recursos de otimiza\u00e7\u00e3o para diminuir a demanda exigida do servidor, aumentando ainda mais a performance do seu site!<\/p>\n","protected":false},"author":140,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1179,8],"tags":[1376],"class_list":["post-6570","post","type-post","status-publish","format-standard","hentry","category-desenvolvimento","category-tecnologia","tag-desenvolvimento"],"_links":{"self":[{"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/posts\/6570","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/users\/140"}],"replies":[{"embeddable":true,"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/comments?post=6570"}],"version-history":[{"count":1,"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/posts\/6570\/revisions"}],"predecessor-version":[{"id":31302,"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/posts\/6570\/revisions\/31302"}],"wp:attachment":[{"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/media?parent=6570"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/categories?post=6570"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/king.host\/blog\/wp-json\/wp\/v2\/tags?post=6570"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}