Normalize Accept-Encoding via HAProxy para taxa de acertos otimizada do Squid

1

Nossa infraestrutura de site usa HAProxy para balanceamento de carga, um cluster do Squid para armazenamento em cache e dados de aplicativos estão em um cluster do IIS.

Carregamos o balanceamento HAProxy por URI para otimizar o índice de acertos do Squid, mas sabemos que o Squid está mantendo diferentes cópias de cada página com base no cabeçalho Accept-Encoding passado para ele pelo navegador e, portanto, pelo IE (gzip, deflate ) terá uma cópia diferente de uma página em cache que o Firefox (gzip, deflate) ou Chrome (gzip, deflate, sdch).

Queremos normalizar os cabeçalhos Accept-Encoding e acho que o melhor lugar para fazer isso seria no HAProxy. Eu agradeceria se alguém pudesse oferecer algumas idéias sobre como conseguir isso sem quebrar o suporte para clientes sem suporte a gzip ou deflate.

    
por Matt Beckman 05.04.2010 / 21:44

1 resposta

2

Bem, talvez você queira substituir "gzip, deflate, anything" por "gzip, deflate"?

Você poderia fazer assim:

reqirep ^Accept-Encoding:\ gzip,[\ ]*deflate,.* Accept-Encoding:\ gzip,\ deflate

Além disso, se você estiver usando um grande farm de lulas, você pode estar interessado no consistente do haproxy 1.4 hashing Evita rebalancear todos quando você adiciona ou remove um servidor, para que as transições do servidor sejam mais suaves.

    
por 06.04.2010 / 07:34