Высокое время соединения TCP / IP, когда клиенты подключаются в первый раз или переподключаются через 3 минуты - PullRequest
0 голосов
/ 11 ноября 2019

У меня есть веб-приложение .NET MVC, работающее на Windows Server 2016, IIS.

Когда я подключаюсь к приложению, установление соединения TCP / IP занимает более 20 секунд. Все последующие запросы выполняются быстро. Если я подожду около 3 минут и попробую еще раз, проблема снова появится, если я попытаюсь подключиться через новое анонимное окно или другой браузер. Если я подключаюсь к приложению локально, используя браузер на сервере, он работает нормально. Судя по журналам Windows, пул приложений не перерабатывается. Я попытался временно отключить брандмауэр Windows безуспешно.

Есть идеи, что мне следует попробовать?

Вкладка Fiddler Statistics:

Request Count:   1
Bytes Sent:      227        (headers:227; body:0)
Bytes Received:  107        (headers:107; body:0)

ACTUAL PERFORMANCE
--------------
ClientConnected:    11:27:15.867
ClientBeginRequest: 11:27:15.868
GotRequestHeaders:  11:27:15.868
ClientDoneRequest:  11:27:15.868
Determine Gateway:  0ms
DNS Lookup:         0ms
TCP/IP Connect: 21013ms
HTTPS Handshake:    36ms
ServerConnected:    11:27:36.883
FiddlerBeginRequest:    11:27:36.883
ServerGotRequest:   11:27:36.883
ServerBeginResponse:    00:00:00.000
GotResponseHeaders: 00:00:00.000
ServerDoneResponse: 00:00:00.000
ClientBeginResponse:    11:27:36.883
ClientDoneResponse: 11:27:36.883

    Overall Elapsed:    0:00:21.014

Chrome devtools сроки

Chrome devtools timing

1 Ответ

1 голос
/ 11 ноября 2019

Решено с помощью внешней помощи.

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

Клиент попытался подключиться к нему через тайм-аут через 20 секунд, а затем повторил попытку со второй правильной записью. Затем я предполагаю, что соединение оставалось открытым в течение нескольких минут, пока была активность, поэтому последующие страницы загружались нормально.

...