Почему вставка в SSH происходит так мучительно медленно?

Почему вставка в SSH происходит так мучительно медленно?

Большую часть времени, когда я отправляю достаточно большие фрагменты данных в терминал SSH, он буквально проползает по ним со скоростью около 1000 символов каждые 20 секунд; иногда он практически останавливается.

«Достаточно большие фрагменты» — это не какой-то огромный набор данных, это часто скрипт длиной менее 5000 символов (php, ascii).

Почему это?

Я вижу, что bash на целевом сервере тормозит, используя 100% процессора. Что происходит?

РедактироватьТрассировка маршрута:

traceroute to ec2-23-24-25-26.compute-1.amazonaws.com (23.24.25.26), 64 hops max, 52 byte packets
 1  192.168.1.1 (192.168.1.1)  1.704 ms  1.040 ms  0.914 ms
 2  10.240.88.1 (10.240.88.1)  11.722 ms  12.449 ms  12.633 ms
 3  bmly-core-2b-ae4-1332.network.virginmedia.net (80.3.65.233)  10.545 ms  20.922 ms  10.216 ms
 4  brnt-bb-1b-ae6-0.network.virginmedia.net (213.105.159.229)  37.524 ms  13.632 ms  15.232 ms
 5  popl-bb-1a-as7-0.network.virginmedia.net (62.255.81.237)  11.881 ms  50.011 ms  12.091 ms
 6  popl-bb-1b-ae0-0.network.virginmedia.net (213.105.174.230)  15.561 ms  19.908 ms  39.367 ms
 7  tele-ic-5-ae0-0.network.virginmedia.net (213.105.159.117)  18.477 ms  42.429 ms  12.764 ms
 8  equinix01-iad2.amazon.com (206.223.115.68)  162.399 ms  96.645 ms  108.442 ms
 9  72.21.220.51 (72.21.220.51)  92.975 ms
    72.21.220.49 (72.21.220.49)  101.136 ms
    205.251.245.7 (205.251.245.7)  96.280 ms
10  72.21.222.149 (72.21.222.149)  97.333 ms
    72.21.222.141 (72.21.222.141)  104.084 ms  112.991 ms
11  216.182.224.214 (216.182.224.214)  98.459 ms
    216.182.224.207 (216.182.224.207)  105.273 ms
    216.182.224.55 (216.182.224.55)  108.202 ms
12  * * *

решение1

Обычно это заполняемый буфер. Можно сравнить это с движением по шоссе: если машин проезжает меньше, чем рассчитано шоссе, все идет нормально. Но если машин проезжает больше, чем установлено, движение по шоссе замедляется, потому что шоссе не может с ним справиться. ЦП просто загружается, потому что он постоянно опустошает и заполняет небольшие части буфера, что приводит к гораздо большему количеству циклов. Задержка в 100 мс может быстро вырасти до нескольких секунд, чтобы пропустить все данные через буфер.

SSH предназначен для выполнения команд, поэтому вы можете захотеть использовать другой способ сделать это или попытаться переосмыслить, что именно вы делаете. Я не понимаю, зачем вам удаленно редактировать PHP (это не имеет смысла в наши дни) или зачем вам копировать и вставлять файл, когда вы можете просто отправить его...

Связанный контент