Встречается на 1% собеседований по Python
Как можно экстренно реанимировать запрос
Для экстренного восстановления запроса можно использовать несколько подходов:
- Retry с экспоненциальной задержкой:
python
import requests
from time import sleep
def make_request(url, max_retries=3):
for attempt in range(max_retries):
try:
response = requests.get(url, timeout=5)
response.raise_for_status()
return response
except (requests.exceptions.RequestException, requests.exceptions.Timeout) as e:
if attempt == max_retries - 1:
raise
sleep(2 ** attempt) # Экспоненциальная задержка- Использование сессии с настройками:
python
session = requests.Session()
session.mount('https://', requests.adapters.HTTPAdapter(
max_retries=3,
pool_connections=10,
pool_maxsize=100
))- Асинхронные запросы (если проблема в блокировке):
python
import aiohttp
async def fetch(session, url):
async with session.get(url) as response:
return await response.text()Для критически важных запросов стоит реализовать:
- Circuit Breaker паттерн
- Локальное кэширование
- Fallback-механизм
- Мониторинг состояния сервиса
Важно учитывать идемпотентность операций при повторных запросах.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы