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