Como o cache Varnish manipula domínios diferentes?

1

Comecei a ler sobre o Varnish e estou pensando em usá-lo como um frontend para meus servidores da Web. Eu tenho vários domínios no meu servidor que buscam o mesmo conteúdo quando as mesmas seqüências de caracteres de consulta são usadas. Então, digamos que um cliente visite:

http://domain1.com/script.php?string1=abc&string2=123

E mais tarde, alguém visita:

http://domain2.com/script.php?string1=abc&string2=123

O Varnish armazenaria em cache os resultados da primeira visita e usaria isso para o segundo cliente? Obrigado!

EDITAR: Depois de mais algumas leituras, parece que o seguinte pode funcionar:

sub vcl_hash {
    set req.hash += req.url;
    return (hash);
}

Então, em vez de adicionar a variável http.host ao hash, ela é ignorada.

    
por Lin 17.07.2009 / 05:18

2 respostas

3

Você pode configurá-lo para fazer isso, classificar. Por padrão, não (e não deveria).

De FAQ do Varnish / HowDoI

I have a site with many hostnames, how do I keep them from multiplying the cache?

You can do this by normalizing the "Host" header for all your hostnames. Here's a VCL example:

if (req.http.host ~ "^(www.)?example.com") { set req.http.host = "example.com"; }

    
por 17.07.2009 / 11:10
0

Eu tenho 3 domínios em minha VM, estou usando o Nginx e o Varnish, atualmente estou em uma configuração pré prod, eis o que estou fazendo:

NGINX:80 ==> VARNISH:8080 ==> NGINX:8081

Estou usando o Nginx: 80 como um proxy SE o domínio precisar de Varnish, se não, eu uso o material do FastCGI. Neste exemplo, os sites não de Varnish não são afetados pelo verniz. Parece estúpido, mas funciona ;-) e nenhum dos meus clientes reclama (ainda ...).

    
por 14.08.2012 / 12:39