Mercurial: выполнение доступа через ssh и http

Я заметил, что клонирование репо через ssh происходит намного медленнее, чем через http, независимо от того, принадлежит ли это к моим собственным серверам или BitBucket. Многое в моем случае равно 10 секундам от http против более 2 минут с ssh в том же репозитории BitBucket.

Я использую Mercurial для Windows (TortoiseHg 1.5, Mercurial 1.7). Оба теста выполнялись как из графического интерфейса, так и из CLI.

Это обычная проблема или я что-то не так?

Ответ 1

Вы включили сжатие ssh в своем ssh-клиенте? Он по умолчанию используется в HTTP, но по умолчанию он отключен в ssh, это параметр, который ssh ​​и не меркурийные элементы управления.

http://confluence.atlassian.com/display/BITBUCKET/Using+SSH+to+Access+your+Bitbucket+Repository#UsingSSHtoAccessyourBitbucketRepository-EnablingCompression

Обычно Mercurial ssh доступ быстрее, чем http - это для меня в любом случае.

Я нахожу, что в локальной сети все происходит быстрее без сжатия (сжатие занимает больше времени, чем xfer), а на WAN - наоборот.

Ответ 2

Я видел то же самое.

Во-первых, у меня была проблема ssh RHEL4/RHEL5, которая запрещала сжатие для согласования - но это исправлено сейчас (настройки настроек). К сожалению, я все еще вижу фактор ~ 3 при клонировании репо (http против ssh).

Я использовал "ssh = ssh -C -v", чтобы увидеть степень сжатия.

Я использую Linux, и я вижу это при клонировании большого репо (180M +) - через WAN (Европа - Индия/Азия).