Ответ
Да, в HTTP/1.1 Keep-Alive включен по умолчанию (персистентные соединения). Это позволяет переиспользовать TCP-соединение для нескольких запросов, уменьшая накладные расходы на установку соединения.
Пример заголовков:
Connection: Keep-Alive
Keep-Alive: timeout=5, max=1000
В Go можно управлять Keep-Alive через http.Transport:
transport := &http.Transport{
DisableKeepAlives: false, // включен по умолчанию
MaxIdleConns: 100,
IdleConnTimeout: 90 * time.Second,
}
client := &http.Client{Transport: transport}
Если сервер не поддерживает Keep-Alive, соединение закрывается после ответа.