Sperimentazione
Ribilanciamento automatico dei pesi
La ripartizione realizzata è misurata e corretta a intervalli regolari, così il traffico che ogni variante riceve davvero converge su quello che ha chiesto.
L’assegnazione casuale non produce una ripartizione perfettamente uniforme, e le piccole deviazioni si accumulano. Il ribilanciamento misura ciò che ogni variante ha davvero ricevuto e spinge i pesi configurati nella direzione opposta, così la ripartizione cumulata converge su quella configurata invece di allontanarsene.
Il processo gira ogni quindici minuti sui test attivi. Legge i conteggi delle sessioni per variante, calcola una correzione, scrive i nuovi pesi e ritocca sul posto il file runtime generato anziché ricostruirlo, perché un ribilanciamento cambia solo pochi numeri interi.
Due protezioni gli impediscono di fare danni. Sotto un numero minimo di sessioni non viene aggiustato nulla, perché a volumi bassi la deviazione da correggere è solo rumore. Un test con una variante pubblicata è saltato del tutto: una pubblicazione significa che il test è stato concluso e la sua ripartizione non è più una questione di misurazione.
Tutto ciò che fa è registrato per test, così una ripartizione che sembra sorprendente si può ricondurre ai passaggi che l’hanno prodotta.