У меня есть две машины Debian Linux, подключенные через 1 Гбит LAN. Я могу измерить это с помощью необработанной передачи HTTP-файла, скорость wget
которой составляет около 100 МБ / с в любом направлении.
Когда я сейчас использую scp
, максимум без сжатия, который я получаю, составляет около 15 МБ / с . Включение сжатия с -C
флагом дает мне, в зависимости от содержимого, до 50 МБ / с .
Тем не менее, здесь, похоже, пропадает много пропускной способности. Я не беспокоился в течение долгого времени, пока мне действительно не пришлось думать о некоторых очень больших передачах лог-файлов, и я просто осознал, насколько странно медленный процесс scp
. Это естественно для меня, чтобы использовать scp
, даже в среде компании, потому что вся инфраструктура настроена для этого.
Что так сильно ограничивает производительность scp? Это связано с процессором из-за шифрования? Когда я использую htop
это, кажется, что он не использует многоядерные процессоры, только один из четырех процессоров максимально.
Есть ли способ увеличить пропускную способность? У меня есть HTTP-серверы и samba, но для перемещения файлов между компьютерами Linux я обычно просто использую SSH, так я и вырос. Но теперь это заставляет меня задуматься, кажется, мне нужно рассмотреть другие способы передачи больших объемов данных.
HTTP используется только для конкретного приложения в PHP / Java / что угодно, а samba используется по некоторым особым причинам, нам нужен доступ с машин Windows.
-C
опция сжатия сделала его медленнее (21 МБ / с вместо 112 МБ / с). Поэтому, пожалуйста, позаботьтесь с-C
.