-m flag
Вызывает параллельное выполнение поддерживаемых операций (acl ch, acl set, cp, mv, rm, rsyn c и setmeta). Это может значительно повысить производительность, если вы выполняете операции с большим количеством файлов через достаточно быстрое сетевое соединение.
gsutil выполняет указанную операцию, используя комбинацию многопоточности и многопроцессорности, используя количество потоков и процессоров определяется значениями parallel_thread_count и parallel_process_count, установленными в файле конфигурации boto. Возможно, вы захотите поэкспериментировать с этими значениями, так как наилучшие значения могут варьироваться в зависимости от ряда факторов, включая скорость сети, число процессоров и доступной памяти.
Использование параметра -m может ухудшить вашу производительность, если вы используете более медленную сеть, такую как типичные скорости сети, предлагаемые домашними сетями не для бизнеса. Это также может ухудшить вашу производительность в случаях, когда все операции выполняются локально (например, gsutil rsyn c, где оба URL-адреса источника и назначения находятся на локальном диске), поскольку он может «thra sh» на вашем локальном диске.
Если операция загрузки или выгрузки с использованием параллельной передачи завершится неудачно до завершения всей передачи (например, ошибка после передачи 300 из 1000 файлов), вам потребуется перезапустить всю передачу.
Также , хотя большинство команд обычно терпит неудачу при обнаружении ошибки, когда флаг -m отключен, все команды продолжат пробовать все операции, когда -m включен с несколькими потоками или процессами, и число неудачных операций (если таковые имеются) будет сообщается как исключение в конце выполнения команды.