TIME_WAIT и CLOSE_WAIT
Вопрос
Что значат TIME_WAIT и CLOSE_WAIT и какой из них тревожный сигнал?
Попробуйте сами
Ответьте про себя или вслух, потом откройте ответ и сверьтесь.
Показать ответ и разбор
Коротко
Ответ
TIME_WAIT: сторона, закрывшая первой, ждёт 2×MSL (в Linux 60 с), чтобы старые пакеты не попали в новое соединение. Это норма, много их на клиенте значит, что нет переиспользования соединений. CLOSE_WAIT: собеседник закрыл, а наше приложение не вызвало close(). Рост CLOSE_WAIT это почти всегда утечка соединений в коде.
Разбор
TIME_WAIT: сторона, закрывшая первой, ждёт 2×MSL (в Linux 60 с), чтобы старые пакеты не попали в новое соединение. Это норма, много их на клиенте значит, что нет переиспользования соединений. CLOSE_WAIT: собеседник закрыл, а наше приложение не вызвало close(). Рост CLOSE_WAIT это почти всегда утечка соединений в коде.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.