O que posso fazer, além de usar um plug-in de cache como o jotcache, para melhorar o tempo de resposta do servidor do meu site?
Eu já removi todos os módulos, plugins e componentes de artigos inativos. Há algo mais que eu possa fazer para melhorá-lo?
Estou falando sobre o tempo antes do cliente (navegador) obter uma resposta à sua solicitação . E não o tempo que a página carrega.
php
cache
performance
server-response-time
hosting
web-tiki
fonte
fonte
Respostas:
Existem várias etapas que você pode executar para aumentar o desempenho do servidor. Observe que alguns deles não funcionarão com a maioria dos hosts compartilhados. Para um ótimo desempenho, você geralmente precisa de um controle mais refinado.
Como em qualquer otimização, você deve medir o efeito que isso tem no desempenho do seu site. Para otimizações básicas, são úteis ferramentas como PageSpeed e YSlow (eu recomendo as versões do Firefox). Para um entendimento mais aprofundado, você terá que medir os tempos de resposta reais do seu sistema ativo durante um período de tempo.
PHP
Ativar cache de código de código
Essa é provavelmente a maior coisa que você pode fazer para aumentar o desempenho do seu site. Eu recomendo usar o OpCache ou o APC . A configuração desses caches pode ser aprimorada para obter um desempenho ainda maior com base nas necessidades específicas dos servidores e sites, mas apenas a instalação já é um grande impulso.
Atualizar versão do PHP
A versão mais recente do PHP vem regularmente com melhorias de desempenho. Além disso, existem vários casos em que o Joomla pode usar um código melhor ao executar em uma versão mais recente do PHP. Hoje, você não deve usar uma versão PHP anterior ao PHP 5.4 se se preocupa com o desempenho.
Configurações do PHP
Nas versões mais antigas do PHP (<= 5.3), tenha o cuidado de desligar
register_globals
emagic_quotes_gpc
obter uma vitória gratuita no desempenho. No PHP> = 5.6, mudealways_populate_raw_post_data
para -1.Extensões PHP
O Joomla contém algum código para solucionar as extensões PHP ausentes. Isso sempre será mais lento que essas extensões. Para uma melhoria de desempenho decente instalar as seguintes extensões:
mbstring
,zip
,ftp
Servidor web
Ativar gzip
A ativação da compactação do lado do servidor comercializa a largura de banda dos recursos da CPU. Para a maioria dos sites, esta é a decisão certa. Tenha cuidado para compactar apenas dados de texto; a compactação de dados binários fornecerá a CPU atingida sem as vantagens da largura de banda. Você também pode ativar a compactação nas configurações do Joomla, mas é melhor se você deixar o servidor lidar com isso.
Pré-compactar recursos estáticos
Não estou falando de minficação (embora isso ajude também), mas você pode configurar o Nginx e o Apache para o servidor já compactar recursos, eliminando efetivamente a ocorrência de CPU na compactação gzip. Pontos de bônus: use o Zopfli para arquivos ainda menores.
Use FastCGI para PHP
Mais especificamente, você deve usar
php-fpm
. Isso impede a inicialização do PHP quando o navegador solicita um arquivo não PHP.Use cabeçalhos de cache apropriados
O uso do
Expires
cabeçalho pode reduzir bastante os recursos do servidor necessários. Afinal, o pedido mais rápido nunca foi feito.Apache
Geralmente eu recomendo usar o Nginx para sites de alto desempenho. Se você realmente precisa usar o Apache por algum motivo, recebi uma dica bônus:
Desativar AllowOverride
A configuração
AllowOverride
paraNone
evita muitas E / S de disco eJoomla
Não use o modo FTP
Embora isso não afete os usuários que leem o site, isso atrasará algumas operações, como a instalação de extensões.
Desativar extensões não utilizadas
Isso vale especialmente para Plugins, muitos deles são executados em todas as solicitações. Desabilitar menus e componentes é útil principalmente ao listar extensões e tipos de menu disponíveis. Também tome 5 minutos para percorrer as extensões que acompanham o núcleo do Joomla e desativar as que você não usa.
Desativar Preparar conteúdo
Se você usa muitos módulos personalizados (
mod_custom
não personalizados como escritos por si), verifique se é possível desativar o Preparar conteúdo nesses. Isso economiza algum processamento.Usar cache
Se você é sério sobre desempenho, habilite o cache. Especialmente útil para ler sites pesados com muitos usuários anônimos. Os usuários conectados ignoram a maior parte do cache, se você tiver muitos deles, o efeito não será tão grande.
Use um manipulador de sessão alternativo
Usando um manipulador de sessão alternativo, você pode liberar seu banco de dados para coisas mais importantes. Eu não recomendaria o arquivo (confundidamente chamado None nas configurações do Joomla), pois isso trará mais uma vez aumento de E / S de disco. O uso da APC é potencialmente o fastet, mas aumenta o risco de perder todos os dados da sessão. O meio termo certo é Memcache. Embora isso exija um processo adicional, é mais confiável que o APC e muito mais rápido do que armazenar todos os dados no banco de dados
Mantenha seu site simples
Você realmente precisa desse botão do Facebook? E o ícone fofo que ninguém vê porque está parcialmente escondido atrás de algum banner? Quanto menos seu site for exibido, mais rápido será. Além disso, sempre que possível, use CSS3 em vez de imagens.
Diversos
Definir um favicon
Graças a uma decisão que remonta ao Internet Explorer 4.0, os navegadores solicitam um arquivo chamado
favicon.ico
sempre que um usuário visita seu site. Se você não tiver um, isso causa E / S desnecessárias, pois as respostas 404 não são armazenadas em cache. Especifique o ícone do seu site com uma meta tag HTML ou adicione um arquivo chamadofavicon.ico
à raiz da web. Não quer um favicon? Coloque um PNG transparente com um tamanho de 1x1 pixel nesse local. Observe que a extensão ainda precisa ser.ico
.Otimize suas imagens
É incrível o tipo de economia que se pode obter otimizando imagens, especialmente arquivos PNG. Há uma variedade de ferramentas disponíveis para qualquer sistema operacional, pessoalmente eu uso o ImageOptim, disponível para o OS X. As imagens principais do Joomla já estão otimizadas, mas passam por suas próprias imagens, especialmente os modelos são importantes. Você também pode verificar as extensões que está usando. Se eles são de código aberto, por que você não contribui com uma solicitação de recebimento contendo imagens recém-otimizadas?
O avançado
Se você realmente quer dar tudo de si, considere colocar o Varnish na frente do seu site. Ele armazena em cache os pedidos no seu site e, se possível, os serve a partir de seu próprio cache, nunca atingindo o Joomla. É uma ferramenta complexa, mas com muito poder. O Joomla não tirará proveito de funcionalidades avançadas como o Edge Side Inclui (ESI), mas seu próprio código poderia.
fonte
Uma GRANDE coisa que você pode fazer para melhorar o tempo de resposta do seu site é atualizar as configurações do módulo. Módulos personalizados (usando mod_custom) têm uma opção para ativar / desativar a preparação do conteúdo. Isso permite que você execute plug-ins de conteúdo no conteúdo de dados em seu módulo personalizado. É poderoso quando usado corretamente, mas adiciona tempo de renderização adicional à saída do módulo. A menos que você esteja realmente usando um plug-in de conteúdo no conteúdo de seu módulo personalizado, é melhor desativá-lo. Você verá uma diminuição no tempo de renderização do módulo ao fazer isso.
Captura de tela da configuração:
fonte
Suponho que você tenha administrado seu site através da velocidade da página do Google e realmente está procurando reduzir o tempo de resposta da página, ou seja, o tempo gasto pela sua marcação para ser enviado ao navegador.
Os culpados mais prováveis para isso são consultas pesadas. Ative a depuração e olhe na parte inferior da página para descobrir quais são as consultas mais pesadas e remova ou reduza-as. Você também pode obter ajuda dos logs de consultas lentas do seu servidor MySQL.
A próxima coisa que você pode ver é o cache. Dependendo do tipo de site que você possui, é possível ativar o cache conservador ou progressivo. Progressivo deve ser usado em sites que não possuem recursos relacionados ao usuário.
fonte
As coisas que sei que podem ajudar (a maioria das quais foram listadas) são:
Eu usei uma combinação do cache interno do Joomla (ou mesmo do APC ativado no servidor) e plugins como o gzip ou o plug-in rockbooster do tema do foguete. Eu também uso não-plug-in CDN plugin com uma conta amazon.
Definitivamente ajuda, mas você precisa assistir ao seu site e desativar o cache para componentes com problemas. Eu tive que ignorar o CiviCRM em nosso site porque não funcionava bem com o cache. O Joomla vem com um plugin cachecontrol que pode lidar com isso.
fonte
Você também deve procurar reduzir os ativos locais e o cache adequado. Uma coisa que você pode fazer é usar os plugins da CDN. Aqui estão dois que eu recomendaria:
'corePHP' jomCDN - https://www.corephp.com/joomla-products/jomcdn
CDN NoNumbers Para Joomla! - http://www.nonumber.nl/extensions/cdnforjoomla
Além disso, se nenhuma das opções acima parecer resolver os problemas, você poderá ter um problema mais profundo - possivelmente no seu modelo, no próprio servidor ou em outras coisas. Se for esse o caso, talvez seja melhor contratar alguém para procurar o problema e resolvê-lo por você.
fonte
Você também pode usar esse código no seu arquivo .htaccess:
fonte
Eu criei mais de centenas de sites usando o Joomla!
Na maioria dos casos, as pessoas pensam que o Joomla está trabalhando pesadamente no servidor, mas, de acordo com as análises feitas por mim, a coisa mais importante para manter seu site RÁPIDO é OTIMIZAR AS IMAGENS e JS / CSS.
Não use editores do Joomla, como o JCE, apenas para alterar o tamanho da imagem. Use editores de imagem como o photoshop ou qualquer outro editor para redimensionar suas imagens para o tamanho necessário!
Use ferramentas de compactação JS / CSS.
Sempre usamos as Ferramentas Pingdom para analisar a velocidade do site e usamos o recurso incorporado do T3 Framework para otimizar JS / CSS!
fonte
Você removeu plugins não utilizados? O Joomla precisa carregar e processar todos os plugins publicados para eventos acionados em uma solicitação.
Você precisa entender as extensões que instalou e como elas interagem com o Joomla!
Muitas extensões instalam plug-ins que gerenciam conteúdo, sistema ou atividades do usuário para iniciar funções de código. Alguns deles podem ser supérfluos.
Eu sei que o k2 instala muitos plugins que respondem a eventos relacionados ao idioma que não produzem saída real para sites de idioma único. Cancelar a publicação desses plug-ins pode reduzir o tempo de processamento.
fonte
Melhore os recursos do plano de hospedagem / servidor
Talvez não seja a resposta que o OP estava procurando, mas vale a pena mencionar, caso não seja óbvio para todos (e nenhuma outra resposta tenha mencionado isso ainda): melhore os recursos do servidor, como memória, CPU e velocidade do disco.
Se você estiver usando hospedagem compartilhada na Web, a atualização do plano "econômico" para o plano "comercial" ou outro plano mais avançado pode melhorar os recursos do servidor disponíveis no seu site e reduzir o tempo de resposta do servidor. Mudar para uma empresa de hospedagem de melhor qualidade (por exemplo, com servidores de hospedagem compartilhada menos lotados) também pode ajudar.
Um plano de hospedagem melhor também pode fornecer acesso a aprimoramentos de desempenho que não estão incluídos no plano de hospedagem básico. Por exemplo, os planos de hospedagem "GrowBig" e "GoGeek" SiteGround incluem cache dinâmico, o que ajuda a reduzir significativamente o tempo de resposta do servidor. A opção de cache dinâmico não está disponível no plano "Inicialização".
fonte