Verniz versus outros proxies reversos


13

Estou trabalhando com uma organização que implantou o Varnish como um proxy reverso de cache para todo o tráfego da Web. Sua composição de tráfego é composta por muitos sites dinâmicos gerados por clientes, com a coleção usual de ativos estáticos pendentes.

Enquanto estou tentando gostar de verniz (acho que tem uma arquitetura muito boa, em princípio), estou tendo alguns problemas para gerenciá-lo e solucionar problemas à medida que surgem, então estou me perguntando se é realmente a escolha certa. Eu usei o squid no passado como um proxy reverso, mas não no mesmo tipo de função, por isso não tenho uma base clara para comparação.

Minha pergunta é direcionada a pessoas que implantaram verniz na produção ou o avaliaram seriamente em relação às alternativas: você ficou com verniz ou acabou usando outro proxy reverso? Quais foram seus pontos-chave para ficar com ele ou mudar e, se você usou outra coisa, o que acabou usando?


6
Verniz é provavelmente a sua melhor solução. Meu conselho é ingressar nas listas de correspondência e se envolver com o produto, pois você provavelmente precisará da assistência deles se tiver algum problema. Olhando para seu site parece que eles oferecem uma opção de suporte pago, que você pode estar interessado em
Dave Cheney

Respostas:


9

Bem, eu estou executando o Varnish nos meus servidores da Web, principalmente por razões de desempenho, embora seus recursos de balanceamento de carga sejam úteis também.

Meu caso de uso é armazenado em cache na frente de sites baseados no Django e faz maravilhas pelo desempenho do carregamento de páginas. Consigo atender a maioria das páginas diretamente do cache e lidar com uma enxurrada de visitantes com poucos problemas.

A razão pela qual escolhi o Varnish foi principalmente o desempenho / escalabilidade. Os pontos principais:

  • O verniz permite que o kernel gerencie a memória virtual, onde o Squid tenta manter caches separados de disco e memória, pode levar o kernel e o Squid a brigar um pouco sobre o que deve ser paginado no disco.
  • O Varnish usa VCL, sua própria linguagem de configuração específica de domínio, que compila até o código da máquina via C. Esse é um benefício de desempenho muito real se você tiver mais do que um pouco de lógica em sua configuração - remoção condicional de cabeçalho etc.

Na minha experiência, Varnish tem um desempenho um pouco melhor que o Squid na maioria dos casos, e muito melhor em picos de tráfego. Por outro lado, configurar o Varnish corretamente levará algum tempo para arrastar na lista de emails, já que não há tantas documentações prontas para serem usadas em seu caso de uso específico que circulam pela rede quanto existem. para o Squid - principalmente devido ao verniz ser um projeto relativamente jovem em comparação.


0

Passei muito tempo tentando obter o Varnish 1.x estável no hardware padrão linux / dell, ele sempre travava de alguma maneira estranha e seu cão de guarda o reiniciava. O que foi bom, exceto pelo cache conquistado que não estava sendo mantido em nenhum outro lugar ...

Dito isto, você realmente está usando a ferramenta certa para o trabalho? Se você deseja um proxy reverso que armazene em cache os resultados da solicitação (supondo que você esteja fornecendo cabeçalhos de cache de boa qualidade), o verniz é uma boa opção. Espero que tenha ficado mais estável na versão 2.0

No entanto, se você estiver executando um site * onRails e desejar balancear a carga em vários servidores back-end, o HAProxy ou o Nginx pode ser o caminho a seguir. Se você não precisar de nenhuma lógica de URL complicada (redirecionamentos, correspondências de regex para reescrever URLs mais antigas etc.), o HAProxy se ajustará à conta. Se você precisar de algo mais capaz, experimente o nginx.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.