Производительность TFS низкая - PullRequest
0 голосов
/ 02 февраля 2019

У меня проблемы с собственной средой TFS, в которой выполнение любого действия в Visual Studio или веб-портале может занять до 20-30 секунд.Проблема временная, и другие разработчики видят те же симптомы.Трассировка медленных запросов с помощью Wireshark показывает 3 REST-запроса к интерфейсу TFS-сервера: первые два запроса возвращаются с ответом 401, а третий возвращает ответ 200.

Разница в запросах, похоже, заключается в аутентификации.Первый запрос не добавляет явный метод аутентификации к POST и возвращает стандартный ответ 401.Второй запрос добавляет NTLMSSP_NEGOTIATE и завершается неудачно с ответом 401 NTLMSSP_CHALLENGE.Третий запрос добавляет NTLMSSP_AUTH к запросу и передает мое имя пользователя AD и ответ со стандартным 200.

Симптомы:

  • Первые два запроса возвращают ошибку 401
  • Кажется, что время между запросами варьируется от нескольких мс до тридцати секунд, а время между запросом и ответом составляет менее 100 мс
  • Подключение к TFS в облачной среде, в которой выполняется вход с использованием той же учетной записи ADподключение к TFS приводит к отображению той же периодически возникающей проблемы.

Среда:

  • Системы разработки подключаются через VPN к облачной среде
  • Учетные записи TFS основаны на AD с серверами AD, существующими в той же облачной среде, что и TFS
  • . Системы разработки присоединены к другой системе AD, которая не имеет доверительных отношений с системой AD, к которой TFS присоединяется
  • Хранилище данных TFS - это SQL Server 2016 EE, размещенный на сервереэкземпляр экземпляра.
  • Версия Visual Studio Pro 2017 (15.4.1)

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

Как я могу определить, что заставляет клиента задерживать последующие запросы, когда предыдущий ответ возвращает ответ 401?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...