divide o tráfego da web em 10% para uma nova versão do site e 90% para a versão antiga?

2

E se você tiver um site: test.com e eu desenvolvemos uma nova versão desse site. E eu preciso testá-lo primeiro antes de lançá-lo em grande escala. Por isso, quero dividir o tráfego da Web em 10% para uma nova versão do site e 90% para a versão antiga.

Isso é possível e como devo abordar isso?

P.S. pilha típica de lâmpadas: linux + apache2 + mysql. 1 grande servidor físico (40gb de RAM?).

    
por Dannyboy 26.11.2013 / 23:22

1 resposta

2

Você pode configurar nginx ou cache de verniz como um proxy reverso na frente do seu site Apache2 e configurá-lo para fazer a divisão apropriada do tráfego.

Dependendo se a nova versão do seu site é ou não compatível com a antiga, talvez você queira garantir que um determinado usuário ou endereço IP sempre receba a versão antiga do site ou a nova versão. 1; a menos que toda a sua ideia gire em torno de um mix-and-match completo.

Com o nginx, você pode usar o link e atribuir upstream a diferentes backends, onde cada O back-end do Apache serviria uma versão específica do site. O módulo também tem a diretiva weight , para que você possa especificar se deseja aumentar muito a probabilidade de um determinado cliente ver a mesma versão do site.

A configuração nginx também tem suporte para leitura de cookies; se o módulo ip_hash acima não for suficiente por si só, você também pode criar uma lógica extra de opt-in / opt-out através dos cookies e fazer com que o nginx faça o tráfego dividido com base no conteúdo dos cookies.

    
por 26.11.2013 / 23:38