Używam CentOS 5.7 i mam narzędzie do tworzenia kopii zapasowych, które ma możliwość zrzucenia pliku kopii zapasowej do stdout
. Plik kopii zapasowej jest dość duży (wiele gigabajtów). Celem jest system plików SSHFS. Aby mieć pewność, że nie zmniejszę przepustowości i nie obniżę wydajności sieci, chciałbym ograniczyć szybkość, z jaką dane są zapisywane na „dysku”.
Jak mogę ograniczyć zdolność stdout
opartą na liczbie bajtów? Na przykład, ograniczenie zdolności procesu do zapisu do około 768Bps.
stdout
, poprzednie pytanie dotyczyło ograniczenia ruchu w sieci. Różne bestie ...stdout
różni się od ograniczania przepustowości. To, że podstawowy problem jest taki sam, nie oznacza, że przyszli użytkownicy nie uznają każdego pytania za użyteczne niezależnie od drugiego. Pamiętaj, że pytania i odpowiedzi dotyczą zarówno pracowników Google, jak i samych pytających, dlatego usunięcie odpowiedzi na pytania jest tutaj tak wielkim grzechem.Odpowiedzi:
Możesz dodać narzędzie ograniczające szybkość do swojego rurociągu.
Na przykład istnieje
pv
opcja ograniczająca szybkość:Alternatywą jest narzędzie,
buffer
które ma:źródło
Kusiłoby mnie, aby zrzucić to na dysk lokalny zamiast pisać bezpośrednio na woluminie zdalnym. W ten sposób możesz użyć
rsync
z,--bwlimit
aby łatwo ograniczyć transfer.Jedną z korzyści tego podejścia jest to, że jeśli do zdalnej maszyny występuje czkawka łączności, przesyłanie jest przerywane, ale sama kopia zapasowa nie eksploduje w blasku chwały.
źródło
rsync
było to realne rozwiązanie w tej raczej ograniczonej sytuacji, w której się znalazłem. = |pv (widok rury)
źródło