Встречается на собеседованиях • сегодня
Как можно экстренно реанимировать запрос
Для экстренного восстановления запроса можно использовать несколько подходов:
- 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
интервью вопросы и ответы