Ter mais módulos ativados torna o site mais lento?


13

Ter mais módulos ativados torna o site mais lento?
Instalei 30 módulos para o meu site e tenho medo de que ele se torne muito lento.

Respostas:


11

Ter mais módulos ativados torna a inicialização do Drupal mais lenta, à medida que mais arquivos são carregados e analisados. Além disso, ter mais módulos ativados não significa automaticamente ter um site mais lento, pois nem todos os módulos executam código para todas as páginas solicitadas.

Por exemplo, se você instalou o Views e ativou apenas o modo de exibição de primeira página, o Views não será executado quando a página solicitada for uma página de nó. Embora, o módulo Views seja implementado hook_menu_alter(), e isso é executado mesmo que você não tenha ativado nenhuma visualização, mas o módulo Views está ativado. Qualquer implementação de hook_menu_alter()é invocada quando os menus são reconstruídos e isso normalmente não acontece em todas as solicitações de página.


6
Ter muitos módulos que não fazem "nada" torna o site um pouco mais lento. Tem a ver com a maneira como o sistema de ganchos funciona; O Drupal faz uma chamada module_hook para cada módulo instalado, toda vez que um gancho é executado. Todas essas verificações podem ser adicionadas. Em nosso site, module_hook é chamado 13.000 vezes e isso levou 168ms; cada pedacinho se soma.
mikeytown2

15

Sim. No entanto, 30 é nada para se preocupar. Você está com problemas quando ultrapassa os 100;)

Instale um cache de bytecode (APC ou XCache) para eliminar a maior parte da lentidão da inclusão de muitos arquivos e remova periodicamente os módulos não utilizados (geralmente todos os projetos reúnem módulos que não são utilizados em algum momento do desenvolvimento)


Vejo que o Commerce Kickstart usa 96 módulos de contribuição.
Pere

A instalação do XCache fez minhas páginas renderizarem no meio tempo. Obrigado.
cherouvim

1

Em complemento às respostas de @Bojan Zivanovic e @kiamlaluno, que estão certas, você deve se preocupar com as interações dos módulos. Ter muitos módulos aumenta os riscos de interações ruins com os módulos (como interações medicamentosas). Eu diria que ter mais de 50 módulos se torna perigoso e que você deve verificar com antecedência se não usa vários módulos para os mesmos domínios de tarefa.

Como um exemplo de construção de páginas com blocos, visualizações, painéis, campos contendo visualizações, blocos contendo visualizações, blocos contendo painéis contendo visualizações ... A idéia é obter algo que um cérebro normal possa entender (como minhas páginas diferentes são compostas) . Isso pode ter um grande impacto nas performances quando vários comportamentos complexos de carregamento são ocultos e encadeados. Outro exemplo é adicionar várias regras de ACL de vários módulos para cada conteúdo.

Se você tem medo de performances, sempre use módulos de criação de perfil e acompanhe as diferenças após cada nova adição de módulo. Em algum momento, um pequeno gancho com algum SQL interno ou um modelo personalizado economizará a geração de tempo do site.


O drupal é feito para o "cérebro normal"? :)
pico34

1

três coisas a serem lembradas durante a criação do site que podem acelerar o seu site drupal são:

  1. Reduza o número de módulos
  2. Verifique seu log de consultas do mySQL para consultas lentas e ajuste o código / adicione índices conforme necessário.
  3. Armazenamento em cache (e esperando que a maioria dos usuários não seja autenticada)

e em relação à parte do módulo, obviamente, maior número de módulos mais lentos será a velocidade, pois eles exigem uma RAM maior para processar.

ainda 30 a 60 módulos não afetarão tanto o seu site.

a razão para o tempo de carregamento do site e o número de módulos é como 100 módulos, atrasando o site em 350ms a 650ms.

espero que você esteja no próximo site, mantendo esses pontos em mente .. :)

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.