Esse guia de performance Magento é escrito para todas as versões da plataforma de comércio eletrônico (incluindo Magento 2). Na verdade, ele convêm ambas as edições – Community e Enterprise. Adicionalmente, é muito útil para aplicações web de php & mysql. Abaixo, você vai encontrar todos melhoramentos vitais do perfomance Magento, otimizações para server e client-sides do seu website de comércio eletrônico e soluções.
Performance do server side Magento
Serviços de hospedagem otimizados Magento
Nginx como servidor web de Magento
Ferramentas de monitoring e analistas
Configurações otimizadas de MySQL Magento
Configurações de PHP Accelerator
Como utilizar o Redis com o Magento
Como utilizar o CDN com o Magento
Performance do application side do Magento
Extensões de full page cache Magento
Extensões de crawler/warmer de Cache
Minificação de CSS e JS
Arrumação do Magento
Reindexão mais rápida
Varnish cache
Busca de catálogo melhorada no Magento
Soluções do performance da classe Enterprise no Magento
A versão completa desse artigo está disponível no nosso livro “Magento DIY. The complete Guide”. Para além do performance Magento, ai descrevemos outros melhoramentos e modificações diferentes. Por exemplo, o livro mostra como melhorar o SEO, a seguridade e outros aspetos vitais de cada website comércio eletrônico, lançar uma campanha de marketing com sucesso e criar experiência de usuário de qualidade excelente. Ademais, “Magento DIY” ensina como obter todas as caraterísticas do nível Enterprise no fundamento da plataforma Community Edition e implementar oportunidades que não estão disponíveis por padrão nas ambas versões. O artigo é apenas o início, pois que todos os melhoramentos robustos estão descritos no livro. Para saber mais sobre “Magento DIY”, siga o link abaixo:
Abaixo, você vai encontrar informação sobre a otimização do servidor Magento. Nos descrevemos todas os aspetos principais desse processo.
Magento Server side performance
Serviços otimizados de hospedagem no Magento
Primeiramente, você deve escolher um serviço de hospedagem para a sua loja Magento. Com o serviço de hospedagem você faz a sua loja Magento disponível via World Wide Web(Teia Mundial). A influência dos serviços de hospedagem no performance do Magento é considerável. Serviços de hospedagem pobres podem significativamente desacelerar o seu website. Verifique o nosso post “Melhores Hospedagens otimizadas para Magento” para escolher uma solução apropriada. Nos recomendamos que você preste atenção ao Nexcess e Rackspace.
Nexcess
Com o Nexcess você vai obter opções completas de hospedagem otimizadas para um performance melhor da sua loja Magento. O Nexcess tem apenas um defeito que consiste em número limitado de países disponíveis: US, Inglaterra e Austrália. O preço básico é $19.95 por mês, mais você deve pagar por um ano inteiro/ se você escolher o pagamento mensal, o Nexcess custará $24.95 por mês. Nas ambas situações, você tem um IP; 7.5GB de espaço disponível; 6GB RAM; 2x Quad Core E5620; 75GB de dados por mês; 9 lojas adicionais e 30 contas por servidor. Para cada cláusula proposta pelo Nexcess você pode lançar um demo. o Nexcess é mais barato, estável e uma solução confiável entre todos os serviços de hospedagem otimizados para Magento possíveis. Nos fortemente recomendamos o Nexcess SIP 200 como uma solução de hospedagem perfeita para lojas de tamanhos pequenos e médium!
Rackspace
O Rackspace é um outro fornecedor de hospedagem de qualidade excelente que oferece soluções designadas para um performance do Magento marcante. A empresa existe desde 2008 e inclui mais de 1000 clientes Magento volta ao mundo. A solução do Rockspace mais barata é $499 por mês. Isso convém lojas que tem 100 cliente concorrentes e 150 milhares produtos. Com esse dinheiro, você vai obter um processador quad core; 1 x 146GB 10K SAS; 4GB de RAM; Cisco ASA 5505 firewall, e 2TB Bandwidth cada mês.
Você pode sempre utilizar o LAMP como uma solução de hospedagem simples para a sua loja Magento, mais há casos quando o Apache com mod_php não é uma ideá ótima. Por exemplo, se a sua loja de comércio eletrônico Magento tem conteúdo dinâmico engendrado pelos scripts PHP adicionalmente aos arquivos estáticos. Nessa situação, o Nginx com o PHP-FPM pode ser muito útil para melhorar o performance do Magento.
Para conexões de HTTP/HTTPS concorrentes, o Apache usa intensivamente o RAM e ciclos CPU. O problema em particular é relevante para configurações estandartes do Apache e o prefork mod_php. Pois que cada processo filho do Apache requer aproximadamente 100MB de RAM para cada pedido em geral, um servidor web dedicado 16GB RAM está limitado a apenas 150 pedidos concorrentes.
A maior avantagem do Nginx é que ele é baseado no eventos, enquanto o Apache no processo. Assim, o Nginx não requer nem um novo processo para aumentar o nível da concorrência. Como resultado, o volume de memória fica muito baixo. Adicionalmente, nos devemos mencionar que o Nginx utiliza I/O assíncrono e nonblocking.
Ademais, o Nginx está operado por um número predefinido de processos worker, e cada um existe numa forma dum processo isolado. Graças à arquitetura non-blocking e dirigida por eventos, o Nginx deixa cada processo worker gerir pedidos por clientes numerosos.
Você pode aproveitar-se do Nginx até se você não intentar gerir milhares pedidos no mesmo tempo. Esse solução de servidor aumenta a funcionalidade do seu negócio nas direções diferentes: a partir de VPS menores até clusters de servidores, oferecendo um rápido performance de Magento.
o Nginx gere aproximadamente 10 milhares pedidos de HTTP/HTTPS por segundo e utiliza apenas 10-20 MB do RAM e 10-15% do CPU médio. Tenha em mente que no case de HTTPS, a utilização do CPU será mais alto por causa da rotinas de encriptação/decriptação.
Uma maior desvantagem do Nginx é absência de mod_php ou os seus análogos designados para executar aplicações PHP direitamente. Sendo um servidor web de conteúdo estático e proxy HTTP/ FastCGI reverso, Nginx não pode gerir o Magento direitamente. Para fazer isso, outros meios devem ser usados. Quando se trata esse problema, a solução mais confiável nesse assunto é PHP-FPM que foi designado para gerir websites de alto carregamento com aplicações web PHP. PHP-FPM consume um pouco de memória residente e oferece algumas caraterísticas únicas, por exemplo: processo spawning adativo; logging avançado com slowlog para scripts PHP que são lentamente executados; habilidade de iniciar workers com php.ini diferente e uid/gid/chroot/environment diversos; uid/gid/chroot/environment; reinício de emergência para destruição do cache de opcode acidental; dados no tempo real sobre performance e atividade de servidor.
Para usar o Nginx na sua loja de comércio eletrônico Magento, você precisa frontend com:
Caching
Proxy FastCGI reverso que gere todas as conexões HTTP/HTTP
Entrega de todos os arquivos estáticos
PHP-FPM
Nesse caso, o Nginx aparece como um proxy FastCGI reverso para todos os pedidos de conteúdo dinâmico. Todos os pedidos são proxied à aplicação PHP-FPM backend, e depois da resposta são entregados de volta ao vistores.
Utilize o Nginx como um balanceador de carregamento (um frontend Nginx + alguns backend PHP-FPM) fornecem backend failover, alta escalabilidade e disponibilidade à instalação do Magento. Adicionalmente, nesse caso não há nem uma necessidade de usar o balanceador de carregamento hardware ou outras expensas associadas.
Ferramentas de monitoring e analistas
Performance mal de Magento leva às páginas lentes e experiência de usuário negativa que pode ser uma razão para os seus clientes abandonar a loja web até antes do checkout. Felizmente, há muitas ferramentas de monitoring a analistas diferentes, designadas para identificar o problema no tempo próprio.
Você pode utilizar New Relic para marcar operações diferentes como transações principais, que servem como ativadores de custom alert. Uma outra função dessa ferramenta ajuda a observar pedidos mais lentas. Graças à caraterística “app map”, o New Relic fornece uma vista clara de dependências da aplicação que ocorrem no seu site de comércio eletrônico Magento. Além disso, essa caraterística funciona para extensões terceiras e serviços externais. Com a caraterística “app map”, você encontrá um “link mais fraco” na sua cadeia de aplicações sem problemas. Finalmente, agora queremos mencionar Apdex scoring e Alerting. Com a assistência do Apdex scoring, o New Relic avalia se a aplicação Magento funciona bem conforme estandartes de industria. Esse recurso é combinado com alerting, por isso você será sempre notificado quando o performance do Magento for desafiado por causa de razões diferentes.
Com a plataforma AppDynamics, você terá uma visibilidade completa do performance de aplicação baseada no PHP. A solução fornece uma instalação rápida e uma alta escalabilidade. AppDynamics automaticamente descobre a topologia de aplicação Magento. A ferramenta fornece uma habilidade de personalizar processos de monitoring ao escolher que transações devem ser incluídas ou excluídas da visualização em tempo real. Além disso, a plataforma distingue experiência web e experiência mobile, e aumenta a visibilidade da usuário à base de dados ao correlacionar o performance da base de dados com originação de métricas de performance de transações. Adicionalmente, você terá visibilidade de erros e causa de excepções de raiz em tempo real.
Magento MySQL optimised configuration
A proper MySQL configuration is among the most important enhancements to Magento performance. It requires an understanding of your hardware – primarily the available RAM. Below, you will find the most reliable solutions, designed to optimize Magento and enhance your website’s performance with the help of proper MySQL configuration.
o MySQL não é uma necessidade, por isso você pode sempre deixar isso, enquanto tentar melhorar o seu performance Magento. Há duas soluções alternativas e populares: MariaDB e Percona. A primeira é um repositório do MySQL desenvolvido pela comunidade. O MariaDB foi criado com GNU GPL, pelos criadores originais do MySQL. Aqui são as suas intensões:
manter uma alta compatibilidade de MySQL;
garantir uma capeabilidade de substituição de “drop-in” com equivalência de biblioteca binária;
correspondência com comandos MySQL e APIs;
MongoGento by Smile Open Source Solutions
Há uma oportunidade de usar o base de dados NoSQL em vez do MySQL. Tudo que você precisar é MongoGento introduzido por Smile Open Source Solutions. Esse módulo fornece uma habilidade de usar MongoDB a sua loja de comércio eletrônico Magento. Como consequência, você vai reduzir o tamanho da sua base de dados e influenciar o modelo EAV Magento. Isso acontece por causa de catálogos heterogêneos, designados para milhões produtos. No mesmo tempo, você conserva a flexibilidade do modelo de documentos familiar.
Uma outra avantagem do MongoGento consiste no seu performance e consequentemente o performance do Magento. A combinação do SoIR, MageCache e MongoDB faz o frontend e backend extremamente rápido. Ademais, é necessário mencionar que o MongoGento é simplesmente escalável, open source e é considerado como uma alternativa segura de MySQL com uma instalação rápida.
A sua desvantagem consiste num conflito entre MongoGento e alguns outros módulos. Por exemplo, regras de catálogo de produto (product catalog rules) não podem gerir alguns atributos. Para receber uma informação detalhada, vai ao GitHub de MongoGento ou a página oficial.
max_connections-onúmero maximal de conexões permitidas.Olha para esse valor:max_used_connections
thread_cache-Cache para preveniracriaçãode thread excessivo.Um bom valoré50-100.Vêthreads_created
table_cache/table_open_cache-opened table instances cache.Entradas numerosassãopossíveis numa tabela.Vêostatus dovalor:opened_tablesecomeçacom4096
open_files_limit-até2handlers de arquivossãorequisitos para tabelas de MyISAM.Cada conexãoéum handler de arquivo.Para maior parte de sistemaséseguro fixar até65535
table_definition_cache-definições de tabela de cacheeuseapenas uma entrada por tabela.Opened_table_definitions para ver.Coloque+10%aonúmero de tabelas senãohouveram mais de50Ktabelas.
back_log-ajustamento par muitas conexões/secérequisito.Ovalor razoávelé2048
max_allowed_packet-põelimite no tamanho de pedidos maximaletamanho variável de stringinternal.Um bom valoré16MB
max_connect_errors-prevem um ataque de forçabruta de senha.Pode ser uma razãoda mensagem doerro"Host Blocked".Um valor apropriadoéaproximadamente1000000.
skip_name_resolve-ajudaaevitar DNS lookup durante conexões.Nãousenomes de host(hospedagem)para GRANTs
old_passwords-istonãodeve ser ativado.Causaautilizaçãode hash da senha insegura.
log_bin-ativa esse parâmetro para replicaçãoeponto duranteoprocesso da recuperação.Para evitar nominaçãopredefinida,vocêdeve por isso no mysql-bin
sync_binlog-fazoBinlog durável.Coloque até1para RAID com BBU ou Flash.Com dinamismo lente,isso se torna num matador doperformance.
expire_log_days-limpa registros binários velhos depois dumnúmero de dias definido.Um bom valoré14,enãoesqueçasobre backups semanal.
tmp_table_size
max_heap_table_size-tipicamente configurado ao mesmo valor.Created_tmp_disk_tables status variável.No disco,campos BLOB/TEXT causam tabelas de tamanhos diferentes.
query_cache_size-ativa esse parâmetrosóse ele foi testado para fornecer ganhos consideráveis.Isso frequentemente leva aos stallsecontenção.Tenha em mente que vocênãodeve fixar mais de512M.
sort_buffer_size-usado para classificaçãona memória buffer.Vêsort_merge_passes.Fixa enquanto da sessãopara pedidos largos.UM bom valoréaté1MB.Valores mais grandes magoamoperformance de pedidos pequenas.
join_buffer_size-usa para ter um performance melhor de Joins com indexes.Masémelhor librar-se desses Joins.Um valor razoávelé8MB.
default_storage_engine-usaomotor Innodb para tabelas se nada mais foi especificado
read_rnd_buffer_size-buffer para ler linhas no ofereçoclassificado.Isso especificaoValor Maximal.Usevalores de16MB,porque frequentemente eles fazem sentido.Nãomescla com read_buffer_size
innodb_log_buffer_size-buffer para arquivos longos.Bons valoressãoentre4e128MB.innodb_ibuf_max_size-controleotamanho de Insert buffer.1/2doBuffer pool por padrão.Valores mais pequenassãobom para SSD
Innodb_flush_method-esse parâmetro controle como IO doInnodb funciona.O_DIRECTéum bom valor para maior parte de servidores.
innodb_auto_lru_dump-Percona Server Feature designado para um aquecimentorápido.Um bom valoré300(segundos).
innodb_io_capacity-controleoInnodb Assumption sobre Performance doDisco.Aumenta isso para ter um dinamismo maisrápido
innodb_read_io_threads
innodb_write_io_threads-controleonúmero de threads ao efetuar processos de leituraeescritura.Pois queoMySQL5.5tem um IO assincróno,valores muito altos pudiam ser desnecessários.4éum bom valor predefinido.
innodb_flush_neighbor_pages-Percona Server feature designado para controlar como flushing funciona.Desativa isso para SSD ao instalar0
OUTRAS OPÇÕES DE INNODB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
innodb_log_file_size-tamanhos de arquivos de recuperaçãode dados.Logs largos fornecem um performance melhor mas com uma recuperaçãomais longa.
innodb_log_files_in_group-deixa2
innodb_file_per_table-armaneza cada tabela doInnodb num arquivo separado.
innodb=force-escriva para desativaroMySQL para começar seoInnodbnãopudia inicializar sozinho.Senãoisso pudia começar,mas com erros de acesso nas todas tabelas doInnodb.
innodb_lock_wait_timeout-operíodo de espero paranível de linha tranca antes de bailing out
innodb_old_blocks_time-usa para fazer buffer pool scan resistente.Bons valoressãoaproximadamente1000.
innodb_file_format-configura qual formato de arquivooInnodb vai utilizar.Oformato legado predefinidoéAntelope.Barracuda permiteausar novas caraterísticas.
innodb_stats_on_metadata-atualiza estatísticas no acesso de dados meta(Information_schema queries).Para desativar isso para mais workloads,coloque0.Innodb vai atualizar estatísticas quando uma tabela significativamente mudar.
performance_schema-ativa Performance Schema no MySQL5.5+eobserva overhead potencial.
log_slow_queries-ativaoLog de Slow Query
long_query_time-com esse parâmetro,coloque0periodicalmente,entãovocêpoderáter um sample docarregamento
log_slow_verbosity=full-mais dados sobre pedidos no Percona Server
low_warnings=2-avisas sobre desligamentos num log de erros.
userstat_running=1-Estatísticas avançadas de utilizaçãoda TabelaeIndex para ambas Percona ServereMariaDB
Shell script do Tuning Primer deixa revisar as configurações do MySQL da loja Magento e faz ajustamentos para aumentar a estabilidade e o performance de base de dados, consequentemente o performance atual do Magento. O script analisa o estatísticas do MySQL e fornece recomendações como configurar o servidor do MySQL. o Uptime (tempo em atividade) requisito para efetuar esse trabalho do script estima mais de 48 horas. O script do Tuning Primer é designado para todas as versões do MySQL, começando de 3.23.
Há muitos artigos sobre o performance de lojas de comércio eletrônico Magento. Eles fornecem muitos conselhos úteis, mas nos recomendamos que você preste atenção a “Magento no Steroids”. O autor comparte as suas melhores praticas. O artigos é baseado no seu trabalho diário com problemas do performance do Magento e além disso ele destaca otimização de servidor do Magento.
Configurações do Acelerador PHP (melhoramentos do performance com a ajuda do OPcache)
Sendo um módulo de caching do código, o OPcache pode significativamente melhorar o performance do PHP e no mesmo tempo o performance do website Magento. o OPcache utiliza a memória compartida para armazenar o bytecode de script precompilado, eliminando a necessidade de PHP carregar e analisar script por cada pedido. Ao otimizar as configurações do OPcache, você melhora o performance do Magento. No link abaixo, você vai encontrar um artigo sobre a otimização das configurações do OPcache.
Tem muitos Aceleradores do PHP desenvolvidos para melhorar o performance do Magento. Você pode encontrar soluções mais confiáveis e úteis no nosso blog. O link abaixo vai levar ao páginas apropriadas.
Redis (REmote DIctionary Server) é um servidor de estrutura de dados em memória principal, open-source e networked que armazena chaves com uma durabilidade opcional.Sendo muito popular entre lojas de chave-valor, o Redis convém Magento. A plataforma de comércio eletrônico atualmente fornece um apoio a muitos backends cache com sistema de arquivos, mas com um número crescente de pedidos, esse tipo backends cache fornece um scaling terrível. Além do mais, alguns deles sofrem de limitações diferentes. Por exemplo, eles não têm nenhum apoio ao grupos relativos de entradas de cache. Para resolver esse problema, você pode configurar o seu website do comércio eletrônico ao Redis, melhorando o performance do Magento.
Porque Redis?
Hoje em dia, o Memcached não tem avantagens significativas sobre o Redis. Ambas as soluções são extremamente rápidas como cache volatile, mas caraterísticas maiores do Memcached são oferecidas pelo Redis. Por sua vez, o Redis continua a superar o Memcached. Essas caraterísticas tornam redis numa storage real de dados (não só um cache como Memcached):
Tipo potentes de dados com comandos poderosos: Sorted Sets, Hashes, Lists, etc
Persistência predefinida ao disco
Transações de trança (locking) otimistas (WATCH/MULTI/EXEC)
Pub/sub extremamente rápido
Valores são limitados até 512MB (1MB por chave no caso de Memcached)
Construído no clustering ( 3.0)
Lua scripting (as of 2.6)
o Redis é mais flexível que o Memcached. Ele fornece escalabilidade, disponibilidade e administração mais altas. o Redis não é apenas uma melhor solução para lugares a onde você pode utilizar o memcached, mas também é muito útil nos outros casos. Por isso, isso é uma opção digna para aumentar o performance do Magento. O processo da implementação está descrito abaixo:
No GitHub há dois projetos úteis. O primeiro é Cm_RedisSession. Isso é um handler de sessão baseado em Redis e designado para Magento. Cm_RedisSession tem monte de recursos relevantes. Clique nesse link para receber descrições mais detalhadas sobre essa ferramenta. Além disso você vai encontrar um tutorial de instalação e exemplos de configurações.
Com o Cm_Cache_Backend_Redis, você vai obter o backend Zend_Cache utilizando o Redis que fornece um apoio completo a etiquetas. O backend faz isso possível tornar um servidor de Redis numa storage de cache central. Tenha em mente que com o Cm_Cache_Backend_Redis, e apoio completo de etiquetas não requer a utilização do cache TwoLevels. Assim, esse backend convém a utilização num cluster ou apenas numa machina. Cm_Cache_Backend_Redis funciona com cada projeto de Zend Framework, todas as versões estão apoiadas.
Сontent delivery network or CDN (Rede de Fornecimento de Conteúdo) é um complexo de servidores com centros de dados numerosos a volta do mundo e na Internet inteira. O objetivo principal de cada rede de fornecimento de conteúdo é fornecer conteúdo a usuários finais com um performance e disponibilidade quanto mais alto possível. Eles fornecem um acesso mais rápido a aplicações, fluxo de media e redes sociais. Assim o CDNs jogam um papel importante no fornecimento de conteúdo moderno em linha (online) e pudiam ser um melhoramento perfeito para performance do Magento. Há monte de soluções possíveis, mas nos recomendamos que você preste atenção ao CloudFlare.
CloudFlare se baseia em inovações recentes do hardware, rotina de rede avançada e melhoramentos modernos de tecnologia de servidor web. Sendo um CDN de nova generação, o CloudFlare funciona muito melhor que os seus competidores. Além do mais, isso é muito fácil para instalar e tem um preço acessível. Esse CDN fornece um carregamento muito mais rápido ao seu website, independente da situação de seus visitantes. Ademais devemos mencionar que o CloudFlare apoia conteúdo estático e dinâmico. A empresa garante que a sua loja de comércio eletrônico Magento sempre estará sempre em linha (online). E por fim, queremos falar sobre apoio a redes IPv6 e outros CDNs. Utilize a nossa extensão Magento de controle CloudFlare® para configurar a sua loja web para esse CDN e melhorar o performance atual do Magento.
Performance do application side (lado de aplicação) do Magento
A velocidade da sua loja de comércio eletrônico Magento é um dos aspetos principais do sucesso do seu business online. Pois que a velocidade está considerada pelo cada motor de busca, ela influencia o ranking (a sua posição). Assim, sites com um perfomance melhor tem mais avantagens que aqueles lentes. Por essa razão, o performance do application side do Magento é importante também.
Há monte de extensões de full page cache designadas para aumentar o performance do Magento ao melhorar a velocidade da loja web e reduzir o tempo de carregamento de página. Todos os módulos desse grupo são baseados no mesmo princípio. o Magento automaticamente engendra e entrega páginas aos visitantes de primeira vez. Essas páginas são copiadas e guardados no cache. Em algum momento, todas as páginas da sua loja de comércio eletrônico Magento tem cópias cached e por isso não tem necessidades de engendrar novas páginas de novo. Como consequência, a extensão de full page cache reduz o carregamento de base de dados e de servidores, assim dramaticamente diminuindo o tempo de carregamento de páginas. Nos recomendamos que você preste atenção à extensão Magento – Lesti::Fpc
Lesti::Fpc
Essa extensão não requer o varnish ou outras ferramentas e soluções externais para fornecer uma aumentação do performance do Magento. Lesti::Fpc funciona com eventos, substitui blocos dinâmicos antes de enviar respostas ao visitantes, e caches páginas cms_page_index, cms_index_index, catalog_product_view, e catalog_category_view por padrão. O Módulo tem apoio a lojas e moedas numerosas. Adicionalmente, Lesti::Fpc
fornece themes móveis e grupos de preços personalizados. Além do mais, a extensão é gratuito. Clique esse link para receber informações adicionais.
É extremamente necessário reforçar a extensão Full Page Cache com o módulo Magento de Cache Warmer/Crawler para alavancar capeabilidade existentes do performance Magento. Esse módulo vai rastejar a sua loja de comércio eletrônico para garantir que todas as páginas carregam tanto rápido quanto possível. Assim, todos seus clientes recebem o conteúdo mais recente na velocidade mais rápida. Além disso, as extensões Cache warmer/crawler ajudam a melhorar o hit rate de cache de website ao pre-cache páginas de websites uncached. Como resultado, há mais pedidos cached e menos pedidos uncached.
Minificação de CSS e JS
Também você pode otimizar o performance e a velocidade do Magento ao fazer alguns truques com arquivos de CSS e JavaScript. Para combinar, comprimir e cache tudo isso, nos recomendamos que você utilize a extensão Magento Fooman Speedster Advanced. Isso combina arquivos numerosos de JavaScript apenas num arquivo de JavaScript. A mesma coisa acontece com arquivos de CSS. A extensão reduz o tamanho total de arquivos que estão por ser descarregadas e o número de pedidos HTTP. Como consequência, o tempo de carregamento de páginas está reduzido. Você pode descarregar a extensão Speedster Magento grátis
Graça a um sistema excelente de logging, as detalhes de cada pedido no Magento está logged. Isso leva ao base de dados de um tamanho excessivamente grande que desacelera a loja de comércio eletrônico. Felizmente, há muitas soluções Magento de arrumamento. Mantenendo a base de dados através arrumamento de log leva a um melhoramento dramático no latência e performance Magento. Nexcess explica como otimizar uma base de dados larga e aumentar o performance do site. Há mais um guia no Magikcommerce. Além disso, você pode verificar conselhos de especialistas diferentes. E não esqueça proteger você da dores de cabeça futuras com o módulo Magento – Yireo_DisableLog. Essa ferramenta não deixa Magento log coisas, como resultado você tem bases de dados mais arrumadas. Você pode utilizar a extensão para bots de busca e outros pedidos. Como consequência, bases de dados de um tamanho excessivamente grande nunca vão diminuir o performance do seu website Magento.
Reindex mais rápido
Reindexo mais rápido é um outro aspeto da otimização do performance do Magento. Ele lhe deixa reduzir carregamentos ao acelerar o processo de conservar produtos no catálogo. Consequentemente, você aumenta o performance do Magento.
Ao instalar esse módulo Magento, você vai significativamente aumentar o performance do Magento e a velocidade do backend admin. Conservação de produtos e categorias será mais rápida com o Indexing Melhorado. Como resultado, os seus administradores poderão fazer o volume de trabalho mais grande num jeito muito rápido.
Com a extensão Fast Asynchronous Re-indexing, você vai aumentar o performance do seu website Magento. Esse módulo reduz pico de cargas no servidor ao acelerar o trabalho da administração. Quando alguém adiciona um novo produto ou muda já existentes, o query para produzir re-indexão de produtos ocorre. Com a extensão Fast Asynchronous Re-indexing, processo cron efetua re-indexão de dados no background. Como resultado, admins podem trabalhar continuamente sem necessidades de esperar até o processo de re-indexão terminar.
Fast Asynchronous Re-indexing
Varnish cache
Varnish foi designado para minimizar o número de contenções entre threads. Ele armazena dados em memória virtual e a tarefa de decidir que fica paged out ao disco e que fica armazenado, vai para OS. Como resultado, você pode evitar a situação quando dados são cached pelo sistema operacional e no mesmo tempo movidos ao disco pela aplicação, melhorando o performance atual do seu Magento.
Essa extensão foi designada para melhorar a compatibilidade de Magento com Varnish. Com a assistência do Turpentine, você vai melhorar o performance da sua loja Magento ao adicionar reverse-proxy de caching rápido para o seu website de comércio eletrônico. O prolema é que a solução predefinida não cache pedidos com cookies, por isso coockie frontend do Magento causam quase zero hit-rate para Varnish. Ao instalar a extensão Turpentine Magento, você fornece arquivos de configurações de Varnish ou VCLs e melhor o comportamento do Magento. Como consequência o Varnish funciona com o Magento.
Uma ferramenta de busca confíavel é importante para cada loja de comércio eletrônico pois que ela melhora a experiência de usuário. Felizmente, há monte de extensões designadas para fornecer uma oportunidade a seus visitantes de buscar conteúdo desejado no jeito mais rápido. Nos recomendamos que você preste atenção ao Sphinx Search Ultimate e Managed Elasticsearch, porque eles aumentam significativamente o performance relativo a busca.
Sphinx Search Ultimate
A extensão vai lhe ajudar a melhorar a qualidade de busca na sua loja Magento. Search Sphinx Ultimate by Mirasvit apoio mais de 660 palavras de parada e entendem mais de 60 milhares sinônimos. Isso fornece uma habilidade de buscar por categoria, nomes, etiquetas e produtos SKUs. A extensão costa $149.
Por sua vez, a extensão Managed Elasticsearch Magento fornece uma das opções mais potentes de busca de texto completo disponíveis como um produto open source. Com esse módulo, você vai fornecer resultados mais precisos aos seus clientes. Adicionalmente, o Managed Elasticsearch fornece uma habilidade de configurar nome de atributos, descrições e SKUs como atributos buscáveis.
Enterprise Clusters by Nexcess construído para fornecer um performance tanto alto quanto possível. Todas as soluções se baseiam nos últimos reforços da seguridade e performance. Cada cluster é construído, otimizado e personalizado para o Magento. Todos incluem um acesso ao Nexcess’ CDN. Uma solução básica é Two-Node Cluster. É um servidor de aplicação e no mesmo tempo um servidor de base de dados. Com essa solução, você poderá dividir o carregamento da sua loja Magento em dois servidores independentes. Adicionalmente, você obterá recursos diferentes, como ambientes adicionais de firewall e staging. O preço do Two-Node Cluster começa de $1,499 por mês.
Rackspace hospeda mais sites Magento que outros competidores. A empresa fornece templates simples e potentes para gerenciamento auto-serviço. Outras avantagens do Rackspace são opções de arquiteturas flexíveis, end-to-end apoio, experiência excepcional de clientes e claro um performance da qualidade excelente.
Mgt-commerce também fornece serviços de hospedagem. Ao escolher essa solução, você obterá tempo adicional para gerir o seu business. Mgt-commerce introduz 4 tipos de Multi Server Environments (Ambientes de Multi Servidor) designado para melhorar o performance de Magento. O preço básico da solução começa de €249.
E não esqueça verificar Dedicated Magento Cluster by Byte. A solução costa €1800 por mês e oferece uma ótima velocidade e produtividade.
Byte
Como escalar o Magento no ambiente de hospedagem multi
Nesse tutorial no severalnines, o autor mostra como cluster o Magento, Nginx e MySQL nos Servidores Multi. O artigo é cheio de conselhos úteis, materiais visuais demonstrativos e exemplos. Há 3 respostas no stackexchange, demostrando como escalar o Magento em ambiente de hospedagem multi. Também recomendamos que você preste atenção a esse artigo publicado por Valentine Okafor. Ele descreve como aumentar o performance do Magento ao mover seu base de dados aos servidores diferentes.
No artigo SUPER-scaling Magento , Fabrizio fala sobre website Magento com requisitos seguintes: até 1000 “reservations”/segundo, até 30 encomendas/segundo e 2 milhões produtos. Ele descreve como melhorar a escalabilidade e o performance atual. Verifique esse post e não esqueça seguir Fabrizio no Twitter
Magento sem HHVM e Varnish
Verifique como superar limites de velocidade do Magento sem HHVM e Varnish:
EcomDev_LayoutCompiler
Layout Compiler para Magento é outra coisa útil e por isso achamos que é necessário o mencionar nesse artigo. Ele transforma arquivos xml de layout recursivos num código php. O código é cache pelo Cache Opcode.
o Performance é extremamente importante para muitos websites e lojas de comércio eletrônico não são excepções. Estatísticas difere de marcado a marcado, mas a influência negativa de velocidade óbvia. Conforme summit.co.uk, websites lentes custam £8 bilhões a varejistas online de Inglaterra. No mesmo tempo, há informação sobre uma grande perda de $3 bilhões no comércio eletrônico de marcado dos Estados Unidos.
Testes de performance de websites conduzidos por summit.co.uk mostraram que sobre 90% de 230 varejistas proeminentes online não pudiam corresponder ao benchmark (estandarte) de carregamento de 3 segundos de página. Além disso, alguns pegavam 8 segundos para carregar uma página. Mas, como isso influencia o comportamento de visitantes? 44% de clientes online pensam que a transação falha se o checkout estiver lente. Como resultado, 33% deles procuram lojas de comércio eletrônico com um performance melhor ou abandonam seus carrinhos. A transação com uma demora de 2 segundos resulta num nível extremamente alto de abandonamento de carrinhos que é mais de 80%.
A infográfica abaixo criada pelo OnlineGraduatePrograms mostra como um usuário web médio que vem de Estados Unidos reage a websites de velocidade baixa. Algumas estatísticas dizem que 25% pessoas abandonam um webiste no caso quando o carregamento duma página dura mais de 4 segundos. A situação com vendas mobile é até muito mais dramática. 40% de americanos deixam sites m-commerce (comércio móvil) m que pegam mais de 3 segundos para carregar uma página.
Pode ser essa impaciência seja surpreendente, porém suas implicações são até mais chocante. Conforme uma pesquisa de Amazon, um segundo de demora para carregar uma página pode custar mais de $1.5 bilhões por um ano. Por sua vez, o Google diz que ao desacelerar a velocidade de busca até por 0.4 de um segundo, a companhia pode perder 8 milhões de buscas cada dia.
Há consumidores novos e existentes em cada loja de comércio eletrônico. Assim, podemos falar sobre 2 tipos de interação – vista primeira e vista repetente. Cada uma tem três métricos específicos: tempo até o primeiro byte, começo de renderização, tempo de carregamento.
Com tempo até o primeiro byte, você mensura a quantidade de tempo requisito por servidores para reagir a um pedido de browser de enviar dados. Com começo de renderização, você mensura a quantidade de tempo necessário que o primeiro elemento de página seja mostrado no browser. O tempo de carregamento quer dizer uma quantidade total de tempo requisito para carregar todos os elementos de uma página.
Os métricos descritos acima devem ser mensurados em condições normais e em condições de stress. Você pode utilizar Webpagetest.org para fazer isso. O relatório vai indicar o que exatamente está fazendo a sua loja de comércio eletrônico retardar. Razões comuns são imagens pesadas e recursos interativos de página, criados shortcuts, ambiente pobre de hospedagem. Aqui são os resultados do Amazon sobre primeira vista:
Primeiro Byte: 0.285 sec
Começo de Renderização: 0.944 sec
Tempo de Carregamento: 2.071 sec
Aqui são a segunda vista:
Primeiro Byte: 0.285 sec
Começo de Renderização: 0.833 sec
Tempo de Carregamento: 1.346 sec
Em medida, esses resultados são exemplos de bons métricos de velocidade de carregamento de página.