I used Robocopy to synchronize website content across 9 web servers. Here's a sample of the batch file that ran robocopy.exe. This batch file was scheduled to run every 5 or 10 minutes or could be run manually to push changes immediately.
robocopy.exe d:\inetpub\wwwroot\ \\webserver1\d$\inetpub\wwwroot\ *.* /E /PURGE /SEC /NP /NJH /NJS /XF keepalive_*.* /XD trigger /XD "D:\inetpub\wwwroot\Long Path Name" /R:5 /COPYALL /LOG:copy_to_webserver1.log
The previous command will copy the content of d:\inetpub\wwwroot and push it to the remote server's d:\inetpub\wwwroot.
/E = copies all subdirectories including empty ones
/PURGE = deletes destination files/folders that no longer exist in the source
/SEC = copies the security permissions (ACL) of the files to the destination location
/NP = turns off the copy progress bar; DEFINITELY do this if you are logging the results
/NJH = don't log the job header
/NJS = don't log the job summary
/XF = exclude copying specific files (e.g. keepalive_*.*)
/XD = exclude copying specific folders (e.g. trigger)
/R = specifies number of times to retry if the copy fails (e.g. 5)
/COPYALL = copies everything: data, attributes, timestamps, security, ownership and auditing information; overkill really since I specified /SEC
/LOG = log results to the specified log file (e.g. copy_to_webserver1.log)
I hope that gets you started on Robocopy. I found it to be a highly reliable and very robust solution for keeping our content in sync.