Avoid or minimize performance-resources when copying large files from one Windows Server onto another different Windows Server?

techresearch7777777 1,981 Reputation points
2025-03-13T01:20:12.01+00:00

Hello, I have the following two Windows Server VMs:

  • WindowsServer2019_Production
  • WindowsServer2022_Archive

Both server names in my above examples are what they're serving as.

I have a PowerShell [CopyFiles.ps1] script file that resides and will run from my WindowsServer2022_Archive VM and will copy some large files from the other WindowsServer2019_Production VM onto this same WindowsServer2022_Archive VM.

I'm not too concerned of performance impacts on my WindowsServer2022_Archive VM since its not mission critical but am concerned of my WindowsServer2019_Production getting negatively affected (performance, resources, risks, concerns, etc...) since its live up and running.

My thought process is have my WindowsServer2022_Archive VM do all of the heavy lifting in running the [CopyFiles.ps1] script from this server and also place the files onto this server.

Will my other WindowsServer2019_Production VM still get affected even though all I'm doing is just trying to copy files off from that server like I described and if yes any suggestions?

Thanks in advance.

Windows for business Windows Server Performance System performance
0 comments No comments
{count} votes

Accepted answer
  1. Anonymous
    2025-03-14T06:47:49.2833333+00:00

    Hello,Choose the right replication tool:

    Robocopy: This is a powerful command-line tool that supports features such as multi-threading, retry mechanism, recovery mode, and more, suitable for copying large files and large number of files.

    Example commands:

    robocopy \WindowsServer2019_Production\shared folder D:\destination folder /MIR /MINLATENCY /W:1 /R:1 /LOG+:copy_log.log

    PowerShell uses Start-BitsTransfer: Uses PowerShell's BITS (Background Intelligent Transfer Service) for asynchronous transfers, which is suitable for tasks that need to run in the background.

    Sample scripts:

    Import-Module BitsTransfer

    $source = "\WindowsServer2019_Production\shared folder\file name"

    $destination = "D:\destination folder\folder"

    Start-BitsTransfer -Source $source -Destination $destination -Description "File Copy" -Priority Low

    To compress files before transferring, you can use built-in tools such as the Compress-Archive cmdlet.

    Example:

    $files = Get-ChildItem -Path "WindowsServer2019_ProductionShared Folder" -File

    $files | Compress-Archive -DestinationPath "D:Destination Folderarchive.zip" -Force

    Transfer the compressed file and then unzip it on the destination server.

    Monitor resource usage:

    Use Performance Monitor on production servers to monitor CPU, disk I/O, and network usage.

    During the replication process, periodically check for resource bottlenecks or abnormal usage.

    Scheduled for off-peak hours:

    If possible, schedule replication tasks to occur during times when the production server is under low load, such as evenings or weekends, to reduce the impact on normal business.

    Consider using a third-party tool:

    If built-in tools don't suffice, consider using third-party tools, which often offer more customization options and optimization features.

    Have a nice day.

    Best Regards,

    Hania Lian

    ============================================

    If the Answer is helpful, please click "Accept Answer" and upvote it.


0 additional answers

Sort by: Most helpful

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.