Varnish / Nginx / Apache

3

Estou explorando o cenário potencial para implementações do Varnish / Nginx / Apache e tenho algumas perguntas sobre essa configuração.

Eu estou olhando para usar todos os três em conjunto, para não substituir o Apache por Nginx.

No momento não tenho certeza se o Varnish deve ser colocado na frente do Nginx, que servirá conteúdo estático e passará conteúdo dinâmico para o Apache ou colocará entre o Nginx e o Apache?

Devo ativar o cache Nginx ou mesmo ativá-lo e não usar o Varnish?

Eu tenho um número de scripts que processam estatísticas com base nos logs do Apache, o que posso fazer para permitir que meus scripts processem logs inteiros, não apenas os logs do Apache, que armazenam apenas estatísticas dinâmicas de solicitações?

Como faço o Varnish passar as estatísticas de acesso ao Apache / bginx, já que o acesso aos arquivos em cache não será registrado pelo Apache / Nginx?

    
por Namesniper 31.08.2010 / 15:58

2 respostas

2

Isso realmente depende do conteúdo do site em questão e do esquema de cache que você está usando.

Eu olhei para este cenário anteriormente para um site de tráfego muito alto (1M + uniques diariamente) e acabamos usando Nginx e Apache, sem verniz. Isso se deve aos métodos de armazenamento em cache existentes e à quantidade de conteúdo dinâmico na página, portanto, poderíamos ter apenas imagens de cache do Varnish e arquivos estáticos, como css e js. Durante o teste, tornou-se uma questão de Nginx ou Varnish, pois, como você, queríamos manter o Apache na configuração. O benchmarking que fizemos mostrou que o Nginx era mais rápido do que o Varnish em alto volume, então foi assim que fomos.

Uma coisa que poderíamos ter feito, mas não seria, seria carregar seções de página dinâmicas em uma solicitação separada e inserir o conteúdo no navegador, o que nos permitiria usar o Varnish para armazenar mais objetos, enquanto passamos o elementos dinâmicos para o Apache e servindo conteúdo estático via Nginx em erros de cache.

No que diz respeito ao problema de registro, você provavelmente precisará escrever scripts que analisarão / unificarão seus logs e, em seguida, poderão executar seus scripts de estatísticas nos logs de mesclagem. Acredito que existem algumas boas ferramentas de mesclagem de log por aí, mas que podem "pensar em uma no momento".

    
por 31.08.2010 / 21:03
1

O Varnish não suporta HTTPS. Se você quiser usá-lo, coloque o Nginx do lado de fora, conversando com os clientes.

Para um servidor de baixo tráfego, decidi usar apenas o Nginx + Apache. Para uma carga maior, pode ser útil comparar o Nginx e o Varnish para seu desempenho de armazenamento em cache.

    
por 31.08.2010 / 23:48