A/B Testing - How do you test two "versions" of each page and compare? I mean, how does varnish know which page to serve up? If and how do you save seperate versions on each page?
Você tem várias opções:
- Basta expô-los em URLs diferentes.
-
Ignore o cache do URL específico. Você poderia fazer isso retornando
pass
emvcl_recv
. Algo parecido com isto:sub vcl_recv { if (req.url ~ "^/path/to/document") { return (pass); } }
-
Explique explicitamente o cache ao expor uma nova versão.
Feature rollout - how would you set up a simple feature rollout mechanism? Let's say i want to open a new feature/page to just 10% of the traffic.. and then later increase that to 20%?
Não sei se há uma maneira "simples" de fazer isso. Desde que você pode colocar
código C
arbitrário em seus arquivos .vcl
, você provavelmente poderia adicionar alguns
lógica para escolher um número aleatório e, em seguida, selecione o backend apropriado
caminho baseado no resultado.
How do you handle code deployments? Do you purge your entire varnish cache every deployment? (We have deployments on a daily basis). Or do you just let it slowly expire (using TTL)?
Para grandes mudanças nós apenas limpamos o cache, e para mudanças menores nós apenas deixe as coisas expirarem.