Практическое задание
В AsyncIO нужно атомарно уменьшить лимит в общем состоянии после await. Какой подход наиболее надёжен?
- Проверить лимит до await и надеяться на редкие коллизии.
- Перенести операцию в атомарную команду Redis или защитить критическую секцию asyncio.Lock.
- Использовать asyncio.Lock и измерить ожидание блокировки под нагрузкой.
- Увеличить число воркеров FastAPI.
- Убрать await из обработчика.
- Повторять операцию при ошибке без изменения модели состояния.