Встречается на собеседованиях • сегодня

Как отслеживать время http запросов

Для отслеживания времени HTTP-запросов в Python можно использовать несколько подходов:

  1. Стандартная библиотека time
    Замеряем время до и после запроса:
    python
    import time
    import requests
    
    start = time.time()
    response = requests.get('https://example.com')
    elapsed = time.time() - start
    print(f"Request took {elapsed:.2f} seconds")
  1. Использование requests с хуками
    Более элегантный способ через requests-хуки:

    python
    def response_time(response, *args, **kwargs):
        response.elapsed = time.time() - kwargs['start_time']
        print(f"Request took {response.elapsed:.2f} seconds")
    
    session = requests.Session()
    session.hooks['response'] = response_time
    start_time = time.time()
    session.get('https://example.com', start_time=start_time)
  2. HTTPX с автоматическим замером
    Библиотека httpx предоставляет встроенный таймер:

    python
    import httpx
    
    with httpx.Client() as client:
        response = client.get('https://example.com')
        print(f"Request took {response.elapsed.total_seconds():.2f} seconds")

Для сложных сценариев можно использовать aiohttp для асинхронных запросов или инструменты вроде prometheus-client для мониторинга в продакшене.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы