.. когда он передает большой файл, он останавливается на скорости около 11 Мбит / с.
не зная, вы могли бы вызвать частичную передачу при сравнении скоростей передачи, что делает процессор узким местом.
Rsync выполняет дельта-передачу по умолчанию, если он видит частичный файл на приемнике (остаток от теста scp
?). Метод "скользящей контрольной суммы" сравнения того, что необходимо передать, отразится на использовании ЦП на стороне отправителя.
Я заметил 4-кратное снижение скорости передачи в большом частичном двоичном файле со слабым процессором в качестве отправителя (Intel Atom или меньшие экземпляры облачных ВМ). На больших машинах скорость передачи оставалась неизменной после первоначального частичного сканирования файлов при продолжении. Тогда разница в пропускной способности по сравнению с обычным netcat
должна заключаться в шифровании через ssh.
Явное указание rsync не использовать частичные передачи (-W|--whole-file
) снова поместит скорости передачи в один и тот же этап. Если необходимо, --append
- это еще один способ возобновить прерванную передачу файла, не вызывая дельта-передачу. get -a
в sftp
может возобновить загрузку.
См. Описание архитектуры Rsyncs для дальнейшего объяснения.