Eksperymenty
Automatyczne równoważenie wag
Faktycznie zrealizowany podział jest mierzony i korygowany według harmonogramu, więc ruch, który naprawdę dostaje każdy wariant, zbiega do tego, o co poprosiliście.
Losowe przypisanie nie daje idealnie równego podziału, a małe odchylenia się kumulują. Równoważenie mierzy, co faktycznie dostał każdy wariant, i popycha skonfigurowane wagi w drugą stronę, więc narastający podział zbiega do tego, który skonfigurowaliście, zamiast od niego odpływać.
Zadanie uruchamia się co piętnaście minut wobec działających testów. Odczytuje liczbę sesji na wariant, wylicza korektę, zapisuje nowe wagi i łata w miejscu wygenerowany plik runtime zamiast budować go od nowa, bo równoważenie zmienia zaledwie kilka liczb.
Dwa zabezpieczenia chronią przed szkodą. Poniżej minimalnej liczby sesji nic nie jest korygowane, bo przy małym ruchu odchylenie, które miałoby zostać poprawione, jest zwykłym szumem. Test z wdrożonym wariantem jest pomijany całkowicie: wdrożenie znaczy, że test został zakończony, a jego podział przestał być kwestią pomiaru.
Wszystko, co robi, jest logowane per test, więc podział, który wygląda podejrzanie, da się prześledzić do cykli, które go wyprodukowały.