Como servir um enorme site estático e pré-gerado?

1

Meu projeto da web atual tem as seguintes características:

  • Um site que é basicamente um arquivo de informações somente leitura. Não há ações interativas que um visitante possa fazer.
  • Todas as páginas (atualmente em torno de 15k) do site são arquivos HTML e gráficos criados anteriormente em outra máquina.
  • A motivação por trás dessa abordagem: como não há processamento dinâmico nem banco de dados, a complexidade de vários aspectos de segurança da Web é muito menor. Além disso, a esperança é alcançar um bom desempenho (ou, em outras palavras, reduzir os custos de tempo de execução), já que o site inteiro é um grande cache único que atende a arquivos estáticos.

No entanto, subestimei o impacto no desempenho de manter uma grande quantidade de arquivos em uma pequena quantidade de diretórios. Atualmente, as URLs do site são mapeadas diretamente para a estrutura de diretórios pré-gerada no sistema de arquivos. Por exemplo. o endereço domain.com/categoryA/... mapeia para o diretório webroot/pages/categoryA/... , que contém uma grande quantidade de páginas HTML, e a leitura de arquivos fica mais lenta e lenta a cada arquivo adicional que é adicionado a esse diretório.

Como eu poderia resolver esse problema? Existem servidores Web ou tecnologias do lado do servidor que abordam especialmente o problema de servir grandes quantidades de páginas estáticas? Uma estrutura de URL amigável a SEO deve ser preservada. Além disso, estou aberto a sugestões.

    
por JFo 30.04.2017 / 12:53

1 resposta

5
Que tal executar o lote do AWS S3 - é ideal para sites estáticos, não há processamento a ser feito, afinal de contas, não tenho ideia de como a coisa de arquivos por diretório funcionaria, mas pode valer a pena tente.

    
por 30.04.2017 / 17:20