Jump to content

Recommended Posts

Bom dia,

 

A minha loja online está com problemas. Dá repetidamente erro 500. Quando vejo os logs deve-se a falta de memória. 'PHP Fatal error:  Out of memory (allocated 9437184) (tried to allocate 12288 bytes)'.

 

Já aumentamos a memória, mas o problema continua.

 

O que posso fazer ?

 

Obrigado.

Link to comment
Share on other sites

Vc. deverá pedir suporte/auxílio do seu provedor. Out of memory problem: o limite de memória não é o suficiente. o limite deverá ser ao menos de 128M, melhor 256M para PS 1.6.0.X

E para PS versões 1.6.1..x o limite deverá ser de ao menos 256M, melhor 521M. Se vc. nao tem como alterar o valor através de php.ini próprio ou então no cPAnel, então somente o administrador do servidor poderá alterar.

 

cPanel - verifique a possibilidade

Tutorial php.ini próprio: http://www.prestashop.com/forums/topic/215803-dica-configuracao-do-servidor-com-phpini-optimizado-para-prestashop/

Link to comment
Share on other sites

Boa tarde,

 

O limite já foi aumentado para 350M. O provedor diz que não pode aumentar mais, correndo o risco de virmos a ter erros noutros sites.

Acham que o ideal era 500M ?

 

É que o site é mesmo lento, e não me agrada  :(

Link to comment
Share on other sites

Vou deixar uma imagem do _PS_DEBUG_PROFILING_, para que possam verificar:

 

Como posso contornar estes valores absurdos ?

memory.jpg

Infelizmente vc. não adicionou o resto de debug profiling. Interessante seria ver em que página é que está tendo o loading time de 7 segundos. Vc. está usando tema próprio ? Está usando módulos não nativos ? O relatório de cada linha fica nas linhas que vem mais abaixo do relatório.

Link to comment
Share on other sites

Boa tarde,

 

O limite já foi aumentado para 350M. O provedor diz que não pode aumentar mais, correndo o risco de virmos a ter erros noutros sites.

Acham que o ideal era 500M ?

 

É que o site é mesmo lento, e não me agrada  :(

Isto depende muito do tamanho da loja. Quantidade de produtos, quantidade de attributos, filtro (block layered) em uso, quantidade de categorias e sub-categorias.

Link to comment
Share on other sites

Vc. deveria comprimir todas as suas imagens antes de subir ao servidor. Use para isto por ex. um tool grátis como Caesium por ex.

 

Quanto ao problema de carregamento vc. está tendo um grande problema no carregamento do primeiro byte. Muito comum em servidores compartilhados e o problema têm inúmeras causas. A maioria sao bottle-necks na linha de tráfego e isto vc. nao nem tem como influenciar. Podem ser na rede que o servidor está pendurado ou em alguma outra rede no caminho da sua loja até ao computador que vc. está abrindo a página.

 

Veja aqui o resultado speed que fiz: http://www.webpagetest.org/result/150727_0N_Q8X/

Link to comment
Share on other sites

Obrigado pela resposta.

 

As imagens também estão a consumir demasiados recursos , certo ?
Vou comprimi-las nesse software que me indicou.

 

O servidor neste caso é dedicado, é uma vps.

Como posso descortinar o que está a 'impedir' o caminho ?

Link to comment
Share on other sites

Sim sim, já  fiz isso.

 

Veja, por favor, como está o meu ccc.

ccc.jpg

Vc. deveria também ativar a otimização do apache. Se vc. ativa o JS ao final que é melhor para efeitos SEO, então dá problemas no seu tema ? Muito comum em temas mal codados. Se nao der problemas, entao deixe também este ativado em sim.

 

Nao entendo vc. está usando um VPS e tem que pedir para acertar valores ? VPS e dedicado não é a mesma coisa. Servidor dedicado é um servidor próprio, ou seja uma máquina ou HD em um rack que somente vc. usa. Vc. instala, vc. configura o sistema de operação e tem toda a liberdade de fazer o que quiser lá em uma infra estrutura HW e SW totalmente isolada sem compartilhamento com outros.

Já o VPS é um espaço virtual em uma máquina que é usada também por outros (compartilhada, mas com sistema de operação isolado por cada host).

A outra opção é um SVS ou seja virtual host compartilhado, aqui vc. compartilha o sistema de operação e a configuração com outros. - pacotes baratos e mais comuns em uso.

Link to comment
Share on other sites

Vou experimentar e verificar se dá problemas ou não.

Habilito todas as opções para SIM ?

Sim, não temos acesso à VPS para esse nível de configurações. Apenas acesso ao cpanel :/

Qual o limite de memória ideal para o site ser razoavelmente rápido ?

Link to comment
Share on other sites

Bom pelo que vejo vc. está usando um filtro na primeira página. Isto significa que o filtro carrega já todas as suas opcoes desde a primeira página. Dependendo da quantidade de filtros vai demorar mesmo, pois o banco de dados necessita de recurso intensos de trabalho neste caso.

 

Ative o modo debug em sua página para descobrir os bottle-necks. Ative também o PS_DEBUG_SQL: https://www.prestashop.com/forums/topic/282165-ativar-modo-debug/ 

Editado: já tinha visto os problemas antes.

Edited by selectshop.at (see edit history)
Link to comment
Share on other sites

Vou experimentar e verificar se dá problemas ou não.

Habilito todas as opções para SIM ?

 

Sim, não temos acesso à VPS para esse nível de configurações. Apenas acesso ao cpanel :/

Qual o limite de memória ideal para o site ser razoavelmente rápido ?

Ah OK entao um SVHS (virtual host) e nao um VPS. Neste caso fica difícil mesmo debugar, pois vc. está compartilhando o sistema com outros. Para a quantidade de produtos o limíte de memória com 256M deve servir perfeitamente. Já para o uso de filtros com muitas possibilidades de filtragens, melhor vc. colocar para 512M. Só que isto nao vai melhora o speed da tua página, mas evitar erros de rendimento, ou seja erros de scripts terminando antes da execucao (out o memory).

 

Por vc. estar em um servidor compartilhado eu temo que nao vai poder melhorar muita coisa. A única tentativa que poderá fazer é de adicionar um php.ini próprio como indicado mais acima. Tópico #4.

Edited by selectshop.at (see edit history)
Link to comment
Share on other sites

Pois, eu entendo. A primeira prioridade é não dar erros de scripts que terminam antes da execução.

A segunda é otimizar a velocidade.

Pode-me ajudar a descobrir os bottle-necks ? Já habilitei o modo dev e consequentemente o PS_DEBUG_SQL, mas não me retorna informação nenhuma na página.

Link to comment
Share on other sites

Filtros são um problema. Aqui ainda não existe uma solução padrão. Eles necessitam de uma intensa capacidade aritmética. Eu corro a minha loja em um nginx com 300.000 opções de filtragem e não consigo minimizar o loading para menos de 3 segundos.

 

Além do mais uso php 5.5.9 e uma versão SQL (5.5.43) das mais atuais, que propicia uma maior velocidade nas tarefas do banco de dados. Quanto mais a sua software estiver atualizada no servidor, quanto mais vai trabalhar com mais velocidade e optimização ;)

Link to comment
Share on other sites

Uma coisa vc. ainda poderia tentar. Eu nao seu em que o bloco de categorias do seu tema tem como base, mas se for o origina do Prestashop, entao este é problemático, pois carrega TODAS as categorias e os seus produtos de uma veza em cada página. Neste caso seria melhor usar um menu à base de JS, como o menu superior nativo do Prestashop. Tente deabilitar o bloco de categorias e use o módulo "menu horizontal superior" e verifique se melhora o loading da página. Vc. terá que configurar o módulo manualmente para que apareca.

Link to comment
Share on other sites

Então, está como quer ? ou quer mais speed ? Mais somente com servidor não compartilhado mesmo....

 

E tentar isto aqui e ver se as páginas com menu carregam mais rapidamente:

 

 

Uma coisa vc. ainda poderia tentar. Eu nao seu em que o bloco de categorias do seu tema tem como base, mas se for o origina do Prestashop, entao este é problemático, pois carrega TODAS as categorias e os seus produtos de uma veza em cada página. Neste caso seria melhor usar um menu à base de JS, como o menu superior nativo do Prestashop. Tente deabilitar o bloco de categorias e use o módulo "menu horizontal superior" e verifique se melhora o loading da página. Vc. terá que configurar o módulo manualmente para que apareca.

Edited by selectshop.at (see edit history)
Link to comment
Share on other sites

Eu adicionei o meu tópico. As páginas dos produtos abre bem rapidinho, mas as páginas que contém o bloco de categorias ainda demora um pouco para abrir. Tente usar o menu horizontal superior, em vez do bloco de categorias à esquerda. Talvez vc. com isto, e porque o menu abre com JS (o bloco nao) vc. consiga mais um pouco de speed.

Link to comment
Share on other sites

Navegando no site por aqui (MG/Brasil - internet média), está demorando de 6 a 15s para carregar o primeiro byte... Demora principalmente nas páginas de categorias.

 

Isto geralmente indica um gargalo no servidor.

Pode ser um erro de PHP em algum módulo, em um override, ou pode ser um problema de limitação do seu servidor mesmo (Link compartilhado, DNS, etc...).

 

Pode ainda ser um sistema de cache mal-configurado no servidor. Cache ruim geralmente é pior do que não ter cache ativado.

Nesse caso, pode tentar desativar o cache do servidor pra ver se melhora. Sem desativar o Cache do Smarty nem o CCC do PrestaShop, claro.

 

Boa sorte

Link to comment
Share on other sites

Como posso descortinar se é um erro da plataforma ou do servidor ? O Backoffice é igualmente lento...

Não tenho a cache de servidor ativa. O administrador de sistemas instalou a APC, ativei, mas não notei diferença absolutamente nenhuma e então desativei.

Refiro que o meu tema tem a opção 'Desativar todas as substituições' setada para 'NÃO', uma vez que para um módulo funcionar teve que ser assim.

 

Refiro também que por vezes no error_log do servidor dá o seguinte log:

Stack trace:
#0 [internal function]: RecursiveDirectoryIterator->__construct('/home/X/...', 0)
#1 /home/X/public_html/tools/smarty/sysplugins/smarty_internal_cacheresource_file.php(196): RecursiveDirectoryIterator->getChildren()
#2 /home/X/public_html/tools/smarty/Smarty.class.php(845): Smarty_Internal_CacheResource_File->clear(Object(SmartyCustom), '/home/X/...', NULL, NULL, NULL)
#3 /home/X/public_html/classes/SmartyCustom.php(167): Smarty->clearCache('/home/loja/...', NULL, NULL)
#4 /home/loja/public_html/classes/SmartyCustom.php(126): SmartyCustomCore->check_template_invalidation('/home/X/...', NULL, NULL)
#5 /home/X/public_html in /home/X/public_html/tools/smarty/sysplugins/smarty_internal_cacheresource_file.php on line 196 

Link to comment
Share on other sites

O template em uso está provocando os erros e deveria ser debugado pelo desenvolvedor.

 

Desativar os overrides (substituições) sempre é uma escolha para manter o core da software desinfluenciado de regras que sobre-escrevem as regras nativas. Se o seu módulo necessita override desativado, então ele sobre-escreve as regras nativas. Pode ser coisa boa ou coisa ruim, dependendo do que para este módulo serve. Se os seu tema possui overrides eu não sei dizer, Isto vc. pode verificar na pasta /overrides se existem ficheiros lá na pasta e/ou sub-pastas. Se existem ficheiros, então existem overrides.

Link to comment
Share on other sites

Voçê sabe se na versão 1.3 do Prestashop as categorias e subcategorias eram carregadas da mesma forma que nas versões mais recentes? Ou seja, ao carregar a página, carregava todas as categorias e subcategorias, ou carregava apenas as subcategorias quando expandíamos a categoria ?

O único override que tem é o hook.php, onde tem a condição para o módulo que faz o match entre as transportadoras e os métodos de pagamento.
O BO é igualmente lento.

Link to comment
Share on other sites

Sim, já na versão 1.3. o bloco de categorias era o mesmo, ou seja não houve upgrade do módulo até agora. Somente algumas melhoras no código, mas na verdade nenhuma melhora na performance. A quantidade de categorias é que faz este módulo dar problemas na performance. Com 3 a 4 categorias não se nota nenhum problema. Foi por isto que Prestashop adicionou o menu horizontal, que funciona com a técnica ajax.

Link to comment
Share on other sites

Mas o que me leva a querer que o problema é do tema é que no site antigo, Prestashop versão 1.3, era muito muito rápido mesmo.
Estou em conversações com o administrador de sistemas, que está a monitorizar as slow querys, e com o developer do tema. Vamos lá ver se resolve :)

Link to comment
Share on other sites

Prestashop 1.3. =  Além do banco de dados ser um terço do banco de dados atual, também a quantidade de scripts lá fazem um terço dos scripts de PS 1.6. Isto significa que o servidor não tinha problemas de performance. Pequeno projeto = rapidez. Grande projeto = sem optimização não existe performance.

Link to comment
Share on other sites

Absolutamente de acordo.
Em relação às querys, li que ao utilizar a instrução SQL_CACHE as querys são mais rápidas. Teoricamente, e por não utilizarem cache serão mais rápidas. Qual a sua opinião acerca deste assunto ? Tenho que começar a pegar de algum lado para pôr o site rapidinho :)

Link to comment
Share on other sites

Já tenho acesso às slow querys. Posso colocar aqui para me ajudarem pf ?

 

pode. Se alguém tiver tempo em uma ajuda mais profunda vai responder. Estou com uns projetos no momento e saíndo de férias 3 semanas...

 

 

 

Outra questão. As minhast tabelas estão como MyISAM, é correto ?

Sure not. Prestashop 1.6. se instala com innodb, só que cuidado com módulos e temas não nativos. Estes ás vezes mudam para MyIsam.

 

Diferença MyIsam versus InnoDB por favor consultar Dr. Google, pois é tema extensivo e no fórum existe um tópico meu com o meu nick antigo que virou guest* sobre a diferença e o uso específico. Más já fazem dois ou três anos...

Link to comment
Share on other sites

pode. Se alguém tiver tempo em uma ajuda mais profunda vai responder. Estou com uns projetos no momento e saíndo de férias 3 semanas...

 

Eu também.. finalmente :)

Vou deixar o ficheiro então. Deixei algum espaço entre querys para ser mais fácil de analisar. Vejam pf o ficheiro aqui.

Eu penso que aos querys que demoram mais devem-se sobretudo ao excesso de categorias e subcategorias.

 

 

Diferença MyIsam versus InnoDB por favor consultar Dr. Google, pois é tema extensivo e no fórum existe um tópico meu com o meu nick antigo que virou guest* sobre a diferença e o uso específico. Más já fazem dois ou três anos...

 

Devo mudar ?

 

 

Edited by nuno.dinis (see edit history)
Link to comment
Share on other sites

Devo mudar ?

 

Eu mudei para mim e para muitos dos meus clientes, só que a maioria não usa temas próprios e nem módulos não nativos, ou ao menos não aqueles que eu não conheço e sei que não tem problema com a mudança.

 

Vc. pode tentar, mas por favor em um clone da sua loja para poder estudar problemas....

 

Quanto ao ficheiro: estou sem tempo para estudar antes das minhas férias. Sinto muito. Talvez o Daniel ou ou CarlosC possam dar um veredicto para vc.

Link to comment
Share on other sites

  • 3 months later...

Olá amigos seguindo aqui a conversa do meu colega nuno, o website tem piorado cada vez mais. De dia para dia vai ficando cada vez mais lento.

Falei á pouco com o Administrador de sistemas do nosso servidor e ele falou que o site fazia um overaload no servidor de perto de 30. Algo que é demasiado.. Será que o problema está na cache? Imagens ?

 

Desde ja agradecido pelo vosso tempo

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...