Я слежу за этим:
При копировании большого файла на удаленный сервер ему не хватает физической памяти
Но решил, что выложу это отдельно.
У меня есть 64-битный сервер Xeon 5405 с 14 ГБ памяти и контроллер хранилища Areca 1680 SATA, который я использую для резервного копирования, NMS и тестирования. Он имеет сетевые карты Intel Pro / 1000EB и PL. У меня есть сервер VMWare 2.0, работающий на нем, и я хочу сделать некоторые преобразования P2V, чтобы протестировать пакет обновления приложения.
Я обнаружил, что в процессе копирования файла VMDK размером 44 ГБ на сервер ему не хватает памяти. Я думал, что это утечка памяти в VMWare Converter, но выполнение преобразования на другом 32-разрядном сервере под управлением Server 2008 не вызывает проблем, если я выполняю преобразование на локальный диск 32-разрядного сервера. Если я затем попытаюсь скопировать файл VMDK размером 44 ГБ на сервер через общий доступ к файлам Windows, сервер в конечном итоге получит всю свою память, потребляемую за кулисами, и передача файлов замедлится до обхода.
Поэтому я попробовал FTP с удаленного сервера. К сожалению, Windows FTP клиент хочет использовать временный файл на C: \ для своей работы, что не сработает, так как у меня не так много свободного места на C :. Итак, я использовал Filezilla в качестве своего клиента, и я вижу аналогичное высокое использование памяти (хотя оно достигает 75% вместо 99%), и передача начинается быстро, а затем становится очень медленной. Я вижу это быстрое / медленное / быстрое / медленное поведение в числах скорости передачи FTP-клиента и аналогичное поведение в сети
Это объясняет большую часть проблемы:
http://blogs.technet.com/askperf/archive/2007/05/08/slow-large-file-copy-issues.aspx
Я пробовал ESEUtil и не делал ничего с памятью, но это не очень быстро.
Сейчас я использую TeraCopy. Он получает 16 МБ / с, что довольно дрянно, но, по крайней мере, стабильно.
Я не считать это мой контроллер хранилища, так как я без проблем скопировал файлы размером несколько ГБ на сервер локально.
Интересно, знают ли люди умнее меня волшебный ответ, который заставит это уйти. Я никогда не беспокоился об этом, пока не появилась 64-битная Windows. У меня также есть проблема на сервере, который я делаю виртуальную копию с использованием памяти SQL Server, но, похоже, ситуация стабилизировалась.
Попробуйте использовать RichCopy 4 Кена Тамару.
http://technet.microsoft.com/en-us/magazine/2009.04.utilityspotlight.aspx?pr=blog
Попробуйте запустить с опцией «Отключить системный буфер».
HTH.
Просто наткнулся на этот пост, когда изучает проблему с VMware, но в любом случае у меня была эта проблема с Windows 2008 Standard x86. Я обнаружил, что включение «Flow Control» на сетевой карте решило мою проблему. Я вел переговоры с MS Support об этом, и у них ничего не было, и я нашел это исправление в случайном посте!
Надеюсь, он избавит вас от головной боли, как и мою! Удачи!
У нас были аналогичные проблемы нехватки памяти при копировании файлов размером 30-40 гигабайт в 32-разрядной версии Windows 2003.
Использование TeraCopy решило проблему, я получаю около 55 МБ / с через гигабит (увеличивая буфер до 2 МБ).