Subversion невыносимо медленно в Windows 7

В настоящее время моя компания использует 32-разрядную версию TortoiseSVN 1.6.16 в Windows XP для подключения по протоколу HTTPS к VisualSVN-Server 2.1.19, работающему на Windows Server 2003, находящемся в той же сети (без прокси). Мы используем самозаверяющий сертификат и проверку подлинности Kerberos с использованием учетных данных Windows (я предполагаю, что это функция, специфичная для VisualSVN). В этой установке все работает денди.

Когда моя компания решила перейти на Windows 7, мы попробовали TortoiseSVN 1.7.6 64-bit на Windows 7 64-bit, что привело к следующей проблеме:

  • Любая операция с участием сервера (репозиторий-браузер, оформление заказа, обновление, возврат, ...) невыносимо медленная, например.
    • Открытие репозитория-браузера (10 проектов): 15 мин
    • обновление при свежем извлечении 50 файлов:1 мин
    • возврат одного пустого файла: 30 сек
  • Черепаха показывает альтернативно нормальные скорости передачи и 0 байт/с. Многие маленькие файлы кажутся медленнее, чем несколько больших.
  • Медленное соединение приводит к различным сбоям при использовании неона в качестве http-lib (serf по-прежнему медленный, но операция завершается успешно без ошибок)
  • EasySVN, SmartSVN и клиент командной строки SVN, поставляемый с TortoiseSVN, демонстрируют одинаковое поведение. То же самое с TortoiseSVN 1.6.16 64-бит.
  • Изменение протокола сервера на HTTP (без SSL) не улучшает ситуацию

С другой стороны

  • TortoiseSVN 1.7.6 32-бит на Windows XP отлично работает с нашим сервером
  • Доступ через браузер /WebDAV работает хорошо даже под Windows 7
  • Журналы на стороне сервера не показывают ошибок или даже предупреждений

Я нашел несколько постов, которые также жаловались на медленное поведение в Windows 7, но они не соответствовали моему счету, потому что они были местными операциями или были ограничены TortoiseSVN.

Поскольку нет никаких признаков того, что существует общая проблема с Subversion в Windows 7, я подозреваю, что это могут быть сетевые параметры нашей ОС или версии протокола. Существуют ли какие-либо параметры, которые, как известно, влияют на производительность Subversion?

Должен признаться, что я не знаком с тем, как именно Subversion (или, скорее, неон/крепостной) опирается на ОС и на какие части. Буду весьма признателен за любую информацию по этому вопросу.

Есть ли какие-либо параметры в файле 'серверы' subversion, которые я должен протестировать? Как бы вы оценили мои шансы на то, что Wireshark'ing соединение поможет мне?

Подобные переживания, мнения, подсказки, помощь и соломинки приветствуются.

Wireshark показывает спорадические промежутки около 5 секунд в потоке TCP, по-видимому, вызванные Сервером VisualSVN.

  • https: сервер подтверждает привет клиента, затем ждет 5 секунд, прежде чем отправить свой сервер hello
  • https:Сервер подтверждает ключ клиента и затем занимает 5 секунд, прежде чем предоставить свои зашифрованные данные рукопожатия
  • https: даже вне рукопожатия сервер иногда отправляет ACK (на уровне TCP), а затем ждет 5 секунд, прежде чем отправить что-то обратно клиенту (данные зашифрованы, поэтому трудно сказать, происходит ли разрыв в какой-то момент интереса)
  • http: на обеих передачах на стороне сервера во время аутентификации NTLM
  • http: перед отправкой сервером флага FIN
9
задан Peter Mortensen 12 January 2017 в 12:40
поделиться