Pergunta

Eu estou ajudando alguém com uma instalação do Drupal 6, e eles estão muito angustiados com o desempenho do site, mesmo que eles são apenas na fase de definição de tipos de conteúdo. Apenas carregar a lista de módulos podem ter mais de 30 segundos, e importar um tipo de conteúdo levou cerca de 3 minutos.

Este é instalado em um grande sistema UNIX compartilhado, e eu estou executando outras instalações D6 no mesmo servidor sem problemas reais (alguns lentidão, mas nada tão ruim). Passei algum tempo esta tarde desativando todos os módulos não essenciais sobre o local, e foi capaz de obter o tempo de carregamento da página lista de módulos para baixo para cerca de 5 segundos. Como eu grupos de módulos reativado, parecia que aquele que provocou a maior queda de desempenho foi a família CCK de módulos (um segundo aumento de 15-20 no tempo de carregamento da página para a lista Modules).

Mais uma vez, tenho outros sites nesse servidor que também está executando CCK (e a maioria dos mesmos outros módulos) e não tendo nada parecido com isso. A principal diferença é que este site muito lento tem uma tonelada de tipos de conteúdo e os campos CCK definido -. 46 tipos de conteúdo separados, e 162 campos CCK

Eu estou desenhando uma conclusão de que existe uma conexão direta entre o desempenho do site (pelo menos em certas operações que tenham a ver com a criação e edição de tipos de conteúdo) e número de tipos de conteúdo e campos personalizados, mas eu não tenho sido capaz de determinar exatamente o que o impacto desta tipos de conteúdo e campos é, e se há qualquer coisa que você pode fazer para mitigar o seu impacto.

Eu fiz instalar o módulo Devel, e descobriu que a maior fuga de desempenho na página Módulos está nas consultas que têm a ver com cache_menu, mas eu não tenho certeza se isso está ligado diretamente ao número de tipos de conteúdo e / ou campos.

Qualquer orientação é apreciada!

Obrigado, Paul

Foi útil?

Solução

Primeiro: A página de módulos é de fato um animal mau, como ele libera completamente todos caches internas do Drupal e reconstrói-los para garantir que os módulos recém-instalados têm os dados mais recentes. Não é um bom indicador do desempenho do site (já que normalmente apenas tarefas administrativas específicas liberar esses tipos de caches), embora seja irritante.

Segundo: Importação de tipos de conteúdo também libera esses caches, porque CCK quer ter certeza de que tudo está atualizado também. É de sub-óptima, mas aí está.

Finalmente: O número de campos de CCK e tipos de conteúdo você tem afeta o quanto o trabalho é feito quando caches são corada e reconstruído. puxa CCK em todas as informações sobre todos os tipos de conteúdo definidos e seus campos, constrói uma estrutura de dados para descrever todos eles, e os usos que a versão em cache para consulta posterior. Com centenas de campos e dezenas de tipos de conteúdo, reconstrução que o cache de dados leva mais tempo, exacerbando os atrasos que você está vendo na página de módulos e ao importar novos tipos de conteúdo.

A boa notícia (como é) é que esta questão específica não tem muito impacto sobre o desempenho global do site, apenas as ações administrativas que nivelado esses caches.

Outras dicas

Esta é a mesma resposta que fiz sobre outra questão Drupal; Se a resposta da Eaton não conseguiu resolver o problema, talvez você deve ter um olhar para as vistas do módulo e menu dinâmico de reconstrução. Toda vez, o menu é reconstruir, levando a 100 ou mesmo 1000 de consultas. Dependendo de como a junta são feitas, você pode acabar com dois semelhante junta-se, nas mesmas tabelas, levando à duplicação do número de consultas. Mais informações podem ser encontradas aqui

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top