Uma grande quantidade de arquivos na pasta de uploads poderia afetar o desempenho?

4

Existe um site onde as imagens não são organizadas em pastas baseadas em meses e anos. Existem mais de 20.000 imagens em uma pasta (uploads) agora. Quando tento acessar a pasta por meio de um navegador de arquivos, ela fica nitidamente congelada.

Então, minha pergunta é: isso pode afetar o desempenho do site?

    
por Igor Skoldin 23.05.2015 / 11:42

2 respostas

2

Resposta curta : não

Uma pergunta diferente é: O upload de um grande número de arquivos no WordPress afeta o desempenho? A resposta para isso: muito provavelmente não.

Razão :

  • O WordPress usa o banco de dados para obter uma lista de arquivos enviados (quase nenhuma diferença para muitos arquivos)
  • O FTP usa o sistema de arquivos (mais lento para muitos arquivos)

Detalhes :

O WordPress não lista o conteúdo do diretório da pasta de uploads, então você pode despejar qualquer quantidade de arquivos lá sem que o WordPress perceba.

Quando você envia um arquivo via WordPress, uma nova entrada de banco de dados é feita na sua tabela wp_posts . O WordPress só conhece os arquivos de mídia examinando wp_posts , portanto o upload de uma tonelada de arquivos adicionará mais linhas a essa tabela e, portanto, tornará as consultas SQL um pouco mais lentas. Embora honestamente, o valor (20.000 entradas no banco de dados) não terá um grande impacto na maioria dos ambientes de hospedagem. Além disso, o WordPress tem otimizações em todos os aspectos para torná-lo mais rápido (por exemplo, armazena em cache os resultados da SQL e limita o número de linhas consultadas)

No entanto, como você notou: Ao acessar a pasta via FTP ela congela. Isso é causado pelo FTP solicitando uma lista de todos os arquivos da pasta, e o servidor demora um pouco para responder com uma lista de 20.000 nomes de arquivos. Mas esse problema de desempenho não está afetando o próprio WordPress.

    
por Philipp 23.05.2015 / 17:57
2

Bem, isso afeta o desempenho do site? Se você não está percebendo na operação real do site, provavelmente não, pelo menos no seu número de arquivos.

Existem considerações de desempenho para grandes quantidades de arquivos. Os hosts de orçamento (que sabem o que estão fazendo) geralmente limitam explicitamente o uso do sistema de arquivos.

No entanto, na operação do WordPress, você não está atingindo muito o sistema de arquivos. A maneira como os anexos funcionam é que os caminhos para o arquivo (e seus tamanhos no caso das imagens) são armazenados no banco de dados . Dessa forma, raramente é necessário acessar (ou pior - varrer) o sistema de arquivos apenas para saber onde estão os arquivos e apontar para ele.

Eu não encontrei isso diretamente, mas, até onde sei, os problemas com grandes quantidades (como milhões de arquivos grandes) de anexos no WordPress começam a aparecer no nível de consulta do banco de dados antes do sistema de arquivos. Mas então eu acho que pessoas com milhões de arquivos já teriam uma configuração de servidor / sistema de arquivos capaz de lidar com isso.

    
por Rarst 23.05.2015 / 14:08