Estou trabalhando com uma organização que implantou o verniz como um proxy reverso em cache para todo o tráfego da Web. Sua maquiagem de tráfego é um monte de sites dinâmicos gerados pelo cliente, com a coleção usual de ativos estáticos pendurados do lado.
Enquanto eu estou tentando gostar de verniz (acho que tem uma arquitetura muito boa, em princípio), estou tendo alguns problemas o gerenciando e solucionando problemas como eles surgem, então estou me perguntando se é realmente a escolha certa. Eu usei lulas no passado como um proxy reverso, mas não nos mesmos tipos de papel, então não tenho uma base clara para comparação.
Minha pergunta é direcionada para pessoas que implantaram verniz na produção ou avaliá-lo seriamente contra as alternativas: você ficou com verniz, ou você acabou usando outro proxy reverso? Quais foram os seus principais pontos para ficar com ele ou mudar, e se você usou outra coisa, o que você acabou usando?
Bem, eu estou correndo verniz em meus servidores, principalmente por motivos de desempenho, embora seu balanceamento de carga seja útil também.
Meu caso de uso é em cache na frente de Django sites baseados, e faz maravilhas para o desempenho de carga da página. Eu sou capaz de servir a maioria das páginas diretamente do cache e lidar com uma enxurrada de visitantes com pouco problema.
A razão pela qual escolhi verniz foi principalmente desempenho/escalabilidade. Os pontos principais:
Na minha experiência, o verniz realiza um pouco melhor que a lula na maioria dos casos, e muito melhor nos picos de trânsito. Por outro lado, a configuração de verniz corretamente levará algum arrasto de lista de correspondência, pois não há tantas documentação de caso de uso pré-para-go-para-go-para-seu-específico que fluem em torno da rede, pois há Para lulas - principalmente devido a verniz sendo um projeto bastante jovem em comparação.
Passei muito tempo tentando obter o verniz 1.x estável no pântano padrão Linux/Dell Hardware, seria sempre pendurado de alguma forma estranha e seu watchdog iria reiniciá-lo. O que foi bom, exceto pelo cache duro que não estava sendo persistido em nenhum outro lugar ...
Dito isto, você está realmente usando a ferramenta certa para o trabalho? Se você quiser um proxy reverso que seja cache os resultados da solicitação (assumindo que você está fornecendo cabeçalhos de cache de boa qualidade), então o verniz é uma boa opção. Espero que seja mais estável na versão 2.0
No entanto, se você estiver executando um site * OnRails e deseja carregar balanceamento sobre vários servidores de backend, Haproxy ou Nginx pode ser o caminho a percorrer. Se você não precisar de nenhuma lógica complicada de URL (redirecionamentos, a REGEX corresponde a reescrever URLs mais antigos, etc), o Haproxy se encaixará na fatura. Se você precisar de algo mais capaz, então dê nginx a ir.