Рекомендации по усилению ловушки эксперимента Python, вызывающей внешнее увеличение квотыPython

Программы на Python
Ответить
Anonymous
 Рекомендации по усилению ловушки эксперимента Python, вызывающей внешнее увеличение квоты

Сообщение Anonymous »

Я создаю упрощенную функцию Python, которая случайным образом назначает пользователю контроль или обработку и для обработки вызывает внешнюю службу для увеличения квоты пользователя (например, ограничений API или ограничений использования). Код намеренно минимален.
Мне интересно, какие проблемы вы можете столкнуться с этим подходом в производстве, особенно в отношении целостности эксперимента и качества данных (фиксированное назначение, обработка времени, дублирование экспозиций, повторные попытки/тайм-ауты, условия гонки, наблюдаемость и т. д.)? Что бы вы изменили, чтобы сделать его более надежным и как бы выглядела более безопасная «серийная» версия?
import random, datetime, requests

def maybe_extend_quota(user_id):
if random.random() < 0.5:
variant = "extra_quota"
else:
variant = "control"
now = datetime.datetime.now()
exposed_at = now
log_exposure(user_id, exposed_at, variant)
if variant == "extra_quota":
r = requests.post("https://limits.example.com/increase_quota", json={"user_id": user_id})
if r.status_code == 200:
log_quota_increased(user_id, now)


Подробнее здесь: https://stackoverflow.com/questions/798 ... ernal-quot
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»