keep_alive и поведение весенних версий w.r.t http? - PullRequest
0 голосов
/ 06 мая 2019

Я помогаю команде, которая сталкивается с проблемой сокета сокета на стороне сервера вызовов между двумя микро-приложениями, вместо того, чтобы держать соединение открытым.

Похоже, что сервер закрывает соединение (много TIME_WAIT), и мы ожидаем, что это происходит потому, что запрос http не устанавливает keep-alive = true. Другие вызовы с использованием флага работают как положено.

Это не моя специальность, но, похоже, что начиная с http / 1.1, отключение keep-alive означает сохранение его. И http / 1.1 достаточно стар, чтобы мы могли ожидать, что весна сделает это.

Я пытаюсь понять, какое поведение по умолчанию является подпружиненным (использует ли он http / 1.1 или 1.0 по умолчанию, поскольку 1.1 соответствует стандартному keep-alive = true, ...) Но я не могу найти информацию на этом. Кроме того, это может зависеть от других факторов, таких как контейнер сервлета.

=> Итак, мой вопрос: может ли кто-нибудь объяснить мне, как это работает и как мы можем достичь такой ситуации (если в заголовок запроса включена версия http, если пропущено, что происходит, ...) или где найти объяснения?

Примечание: мы используем некоторую инфраструктуру, которая поставляется с spring (boot), поэтому зависимость не установлена ​​явно. Но в зависимостях maven я обнаружил пружинное ядро ​​4.3.9.

...