Estou usando um Apache como servidor web frontend que balanceia a carga dos usuários entre 3 nós de servidores web Tomcat. Eu uso mod_jk para fazer isso.
O que eu quero é como configurar o Apache neste servidor de apresentação para que ele armazene em cache todos os arquivos com extensões específicas (como .js, .png, .jpg)? mod_cache?
Muito obrigado.
editar: não consigo alterar nada nos servidores web do Tomcat. Então toda a mágica tem que acontecer no servidor balanceador de carga de apresentação Apache ...
Responder1
mod_cache
é de fato a solução usual aqui se você deseja que o servidor Apache armazene conteúdo em cache para você.
Você não pode, até onde eu sei, armazenar em cache por tipo de arquivo ou extensão mod_cache
- o cache é controlado pelas informações de URL e cabeçalho (então, se você deseja armazenar em cache todas as suas imagens, a maneira mais fácil de fazer isso é servi-las de um /images
diretório, diga mod_cache
para armazenar em cache as coisas que saem desse diretório e deixe-o fazer sua mágica).
mod_file_cache
é uma alternativa que você pode considerar se a lista de coisas que você deseja armazenar em cache for estática (uma lista específica de JS, imagens, CSS, etc.) - há algumas advertências adicionais, especialmente se você usar MMapFile
para manter os arquivos atualizados. memória, mas o desempenho aprimorado pode ser substancial em relação aos caches "tradicionais" como mod_cache
.
Mais informações boas sobre os recursos de cache do Apache podem ser encontradasna seção de cache dos documentos do Apache, mas acho que as duas opções acima são suas melhores apostas. Se você precisar de algo melhor do que aquelesum CDN provavelmente é mais a sua velocidade.