Sobes.tech
Назад к вопросам
Junior — Middle
73

Каким образом можно определить, что определённый запрос выполняется с задержкой?

Компании, где спрашивали
Магнит Тех

Ответ от нейросети

sobes.tech AI

Чтобы определить, что определённый запрос выполняется с задержкой в Go, можно измерить время выполнения запроса с помощью пакета time.

Пример:

package main

import (
    "fmt"
    "net/http"
    "time"
)

func main() {
    start := time.Now()

    resp, err := http.Get("https://example.com")
    if err != nil {
        fmt.Println("Ошибка запроса:", err)
        return
    }
    defer resp.Body.Close()

    duration := time.Since(start)
    fmt.Printf("Время выполнения запроса: %v\n", duration)

    // Если время больше порогового значения, считаем, что есть задержка
    threshold := 500 * time.Millisecond
    if duration > threshold {
        fmt.Println("Запрос выполняется с задержкой")
    } else {
        fmt.Println("Запрос выполнен быстро")
    }
}

Таким образом, измеряя время от начала до конца запроса, можно определить, превышает ли оно допустимый порог и считать запрос "задерживающимся".