VPN аркылуу rsync: үзүлгөн өткөрүүнү кайра пайдаланган кайра аракет
Үзүлгөн туннель байланышты бүтөт, берилиштерди эмес. Үзүндүнү --partial-dir менен сактаңыз, ошол эле көчүрмөнү кайра иштетиңиз жана файлды жарыялоодон мурун текшериңиз.
Жүктөөңүз он эки гигабайттык архивдин төрт гигабайтында токтойт, ал эми жүктөө менеджерлеринен үйрөнгөн адат «улантуу» баскычын басууну айтат. rsync TCP агымын улантпайт, анткени ал агым туннелдин акыркы кайра жөнөтүүсү менен кетти. Ал кыла алары — мурун кабыл алынган байттарды сактап, аларды кийинки аракеттин негизи катары пайдалануу, бул башка эрежелер топтому бар башка механизм. Сиз тандаган желекчелер бул кайра пайдалануу жалпы жүрөбү же жокпу аныктайт.
Кайра аракет абалды кайра курат, агымды улантпайт
SSH сессиясы үзүлгөндө, алыскы тарапта дискке жазылганы гана калат, башка эч нерсе жок. Кайра кошулуу үчүн сессия токени да, кайра ойнотуу үчүн ырааттуулук номери да жок. Кийинки иштетүү жаңы байланыш ачат, булакты кайра окуйт жана кабыл алуучудан анын эмнеси бар экенин сурайт.
Ошол акыркы суроо жарым файлды сактоонун эмнеге татырын түшүндүрөт. Кабыл алуучунун көчүрмөсү rsync-ке салыштыра турган нерсе берет, ал эми алгоритм аныктай алган айырмачылыктарды гана жөнөтөт. Бул дагы метаберилиштердин жаңы өткөрүүсү жана булак боюнча жаңы өтүү, ошондуктан үнөмдөлгөн убакыт файлдын канчалык бөлүгү дал келгенине пропорционал, мурунку байланыш канчалык илгерилеп кеткенине эмес. Эгер кабыл алуучу эч нерсе сактабаса, кийинки аракет толук көчүрмө, биринчиси канча гигабайт жылдырса да.
Кайра пайдаланууга боло турган үзүндү кайда жашаарын чечиңиз
Демейки жүрүм-турум жарым файлды багыттоо жолуна жазат, бул жарым жазылган архивди акыркы аттын астында көрүнөрүнө алып келет. --partial-dir аны өзүңүз тандаган каталогго жылдырат, ал эми колдонмо бул каталогду кийинки өткөрүү тарабынан берилиш катары пайдалануу үчүн сакталган деп сүрөттөйт. Салыштырмалуу ат багыттоо каталогунун астында чечилет, эки учтун жайгашуусу ар башка болушу мүмкүн болгондо дал ушуну каалайсыз.
rsync -e ssh --partial-dir=.rsync-partial --info=progress2 -- \
large-archive.bin [email protected]:/srv/incoming/
Багыттоодо да тартип маанилүү: жарым каталогго үзүндү үчүн жетиштүү орун керек, ал эми томго бүткөн файл үчүн да жетиштүү орун керек. Өткөрүүнүн ортосунда максаттуу томду толтуруу тармак маселесине окшош, бирок андай эмес ийгиликсиздик жаратат жана сакталган үзүндүнү кесилген бойдон калтырышы мүмкүн. Иштетүү башталардан мурун кабыл алуучу хосттогу бош орунду текшериңиз, ийгиликсиздиктен кийин эмес. Ошол эле SSH жолу менен df -h аркылуу бир нече секунд — пландын эң арзан мүмкүн болгон сынагы.
Укуктар кичирээк, бирок реалдуу тынчсыздануу. Байланышы жок эсептер жаза алган жарым каталог башка бирөөгө сиздин кийинки иштетүүңүз кабыл алынган деп эсептей турган мазмунду алмаштырууга жол берет. Аны өткөрүү эсебинин ээлигинде кармаңыз жана башка кызматтар жарыялаган жерге койбоңуз.
Ошол эле көчүрмөнү иштетиңиз, акылдуураагын эмес
Кайра пайдалануу булак менен багыттоо дагы эле ошол эле объектини сүрөттөгөндө гана колдонулат. Ошол эле жол, ошол эле ат, ошол эле файл. Булактын атын өзгөртүү же башка багыттоо каталогун көрсөтүү пайдалуу эч нерсеге каршы жаңы салыштырууну баштайт.
Дельта жүрүм-турумун күтүп --whole-file кошпоңуз. Бул опция rsync-ке бүт файлды дөңгөлөктүү текшерүү суммасын салыштыруу жок көчүрүүнү айтат, бул ылдам жергиликтүү байланышта орундуу тандоо жана ийгиликсиз алыс аралыкка жүктөөдөн кийин так туура эмес тандоо. --inplace да окуяны өзгөртөт: түз багыттоо файлына жазат, ошондуктан үзгүлтүк эски жана жаңы мазмунду аралаштырган, артка чегинүү үчүн өзүнчө үзүндүсү жок файл калтырат.
Прогресс сабы өткөрүүнүн жалпы прогрессин билдирет. Бул бүтүү сигналы эмес. Байланыш дагы ачык турганда сан жүз пайызга жетсе, берилиштер түртүлгөнүн билдирет, кабыл алуучу бир нерсени кайра атаганын, синхрондоогонун же кабыл алганын эмес.
Объектини дал келгенден кийин гана кабыл алыңыз
Алгач чыгуу статусун ырастаңыз, андан кийин каталардын жоктугуна ишенүүнүн ордуна натыйжаны салыштырыңыз. Өлчөм текшерүү кесилген өткөрүүлөрдүн көбүн кармайт; текшерүү суммаларын салыштыруу калганын кармайт, жана экөө тең жүктөөнү кайра иштетүүгө салыштырмалуу арзан.
Эгер архивди төмөнкү процесс жарыяласа, ошол процессти кабыл алынган файлды күтүүгө мажбурлаңыз. Акыркы аттын астында көзөмөлдөнгөн каталогго түшкөн сакталган үзүндүнү кийинки скан алат, ал эми керектөөчүнүн катасы эч качан бүтпөгөн өткөрүү тууралуу эмес, бузулган кирүү тууралуу болот.
Кабыл алуучу ырастаганга чейин булакка тийбеңиз. Аракеттердин ортосунда архивди кайра жаратуу салыштыруу негизин өзгөртөт, ал эми кийинки иштетүү дээрлик баарын өткөрөт же эски да, жаңы булакка да дал келбеген файл жаратат.
Чектөө желекче эмес, байланыш болгондо
Аталыш жана протокол кошумчасы өткөрүүнүн бир чыгымы, жана чоң файл канча убакыт аларын сейрек ушул аныктайт. Кайра баштоо жүрүм-туруму маанилүүрөөк: кол менен кадамсыз үзгүлтүктөн аман калган ыкма кайра башташы керек болгон ылдамыраак ыкмага караганда эртерек колдонууга жарактуу файл берет. Эки учтагы сактоо жана аутентификация жолу ошол эле салыштырууга кирет.
Уруксат берилген альтернативалык жолдорду ошол эле файл жана ошол эле багыт менен салыштырыңыз, жана үзгүлтүктөн кийин ар бири кайдан кайра башталарын жазып коюңуз. Ошол бир тилке VPN аркылуу он эки гигабайттык жүктөө тууралуу кыска сынакта өлчөнгөн кандайдыр бир эң жогорку ылдамдыктан көбүрөөк айтып берет.