cache de cache do wan link disk store

1

O problema: eu quero hospedar muitas fotos digitais de um site. Mais do que o host tem espaço em disco.

O fundo: Eu tenho um vps que hospeda um site, a máquina tem toneladas de largura de banda, mas não muito espaço em disco (50GB ou mais). Eu também tenho um servidor em uma linha de internet mais lenta com muito espaço em disco.

Minha solução: eu estava pensando, seria possível armazenar as imagens na máquina com o link lento, montá-lo no host (com algo como sshfs, ou qualquer outro), então criar links simbólicos para todas as imagens e servir esses links simbólicos do apache. Em seguida, crie um script que examine os logs do apache procurando o número X mais popular de arquivos e copie esses arquivos para locais no servidor da Web (e, portanto, mais rápido).

Depois de um tempo, percebi que isso parecia uma idéia do tipo tarde da noite, e decidi dormir nela. Esta manhã ainda está soando um pouco desonesto, mas deve haver algum tipo de módulo de cache do apache que funcione em cache de disco > certo? (todos os que eu conheço são disco- > memória, movendo arquivos importantes para ram ao invés de mover para um disco local de um link wan mais lento ou um disco local mais lento).

TL; DR: Isso é realmente uma ideia idiota?

    
por Sirex 19.01.2012 / 08:48

2 respostas

1

Se você puder expor a máquina de link mais lenta à internet, você também poderá executar um servidor da Web nessa máquina.

Isso significa que você remove a sobrecarga do sshfs.

Você poderia usar o módulo mod_rewrite do apache juntamente com o mod_proxy para forçar qualquer solicitação de imagem a ir para o seu servidor:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule /(.*)\.(jpg|gif|png) http://slow.server.com/$1.$2 [P] 

A regra RewriteCond diz apenas que a reescrita se o arquivo solicitado não existe no servidor. Então o RewriteRule diz que se a requisição é uma imagem, vá buscá-la do servidor lento.

Em seguida, você só precisa rastrear imagens populares e enviá-las para o servidor. Se eles estiverem presentes, eles serão usados.

    
por 19.01.2012 / 09:59
0

Acho que o que você está procurando é um tipo de proxy da web que decide o que deve ser mantido dentro do cache ponderado no uso.

Então, talvez mod_proxy ou mod_cache (até mesmo mod_disk_cache ) possa ser aproveitado aqui.

Eu acho que, em geral, procurar por um script 'proxy' trará um pouco mais do que você está procurando do que procurar por um script 'cache'.

    
por 19.01.2012 / 09:28