Случајни избори, измешани поминувања и повторени прокси крајни точки
Изберете помеѓу независни случајни избори, измешано поминување и политика без непосредно повторување, наместо повторената крајна точка да ја сметате за расипан ротатор.
Прокси B, повторно прокси B, потоа прокси A. Вашиот дневник изгледа сомнително, но случајниот избирач смее да го прави токму тоа.
Избирањето од истиот список при секое барање дозволува повторувања. Со две еднакво веројатни крајни точки, следниот независен избор има шанса еден спрема два да се совпадне со претходниот. Кратка низа со повторувања не е доказ дека избирачот го игнорирал списокот.
Изберете го однесувањето што навистина ви треба
| Барање | Правило за избор |
|---|---|
| Секој избор е независен | Избирајте од соодветниот список секој пат |
| Искористете ја секоја крајна точка еднаш пред да започнете повторно | Измешајте копија, потрошете ја, потоа започнете ново поминување |
| Избегнувајте ја непосредно претходната крајна точка | Исклучете ја таа крајна точка пред изборот |
За последната политика, експлицитно обработете го случајот со една крајна точка:
candidates = [endpoint for endpoint in eligible if endpoint != previous]
if not candidates:
raise RuntimeError("No different eligible proxy is available")
selected = random.choice(candidates)
Овој фрагмент претпоставува дека random е увезен и списокот на крајни точки е веќе проверен. Јавниот фонд може да започне со бесплатниот список на прокси кога неговите протоколи одговараат на крајниот клиент; ова правило за избор сè уште ги контролира повторувањата. Дали да се чека, да се користи единствената крајна точка повторно или да се запре е политика на апликацијата. Бесконечна јамка што чека друга случајна вредност не може да реши список што содржи само еден различен избор.
Во паралелен диспечер, изборот и евидентирањето на претходната крајна точка бараат и координирано сопствеништво. Инаку два работника можат двата да ја исклучат старата вредност и да ја изберат истата следна вредност.
На крајот, ова правило се однесува на идентитетот на крајната точка. Две различни крајни точки можат да водат до еден јавен излез, а една крајна точка на давател може да води до неколку излези. Забележете ги одделно пред да одлучите дека ротацијата е расипана.