BatchSync is a reliable and high speed solution for automating
file synchronization, backups, mirroring, and replication
over FTP. BatchSync is designed to be run scheduled and unattended
at the server, with extensive logging options and email notifications
to help with remote monitoring.
BatchSync is the perfect solution for:
- Web content distribution
- Web server mirroring
- Remote server backup
- Offsite database backup
- Email backup
- Log file downloads
Try it yourself:
Features at a Glance
- Folder sync between local/network and FTP server folders
- One-way file synchronization
- One-way file replication
- One-way file move (transfer & delete)
- Two-way file synchronization (bi-directional)
- SyncDB smart change tracking
- Task Editor for task editing & Sync preview
- Command line software for batch files
- Run scheduled/On demand
- Run as a service
- Multithreaded transfers
- Automatic reconnects, retries, and resumes
- Include/Exclude filtering by name, size, date, attributes
- Use regular expressions in filters
- Email notifications
- Extensive logging with auto-rotate schemes
- Windows Vista compatible
- Secure Edition adds
support for FTPS and SFTP over SSH2
Features in Detail
sync between local/network and FTP server folders
The folders being synchronized can be local folders or reside at
a network share (UNC filenames and paths are supported). The other
side of the sync set can reside on an FTP server, running any common
FTP server software. BatchSync uses standardized FTP protocol commands,
so it does not rely on any server side extensions or non-standard
New and changed files are transferred from source to target.
file replication (mirroring)
New and changed files are transferred from source to target. Any
extra files or folders that no longer exist at the source are also
deleted at the target. This helps you to manage clutter on the target,
making the target an exact replica of the source.
file move (transfer & delete)
All files in the source folder are transferred to the target, and
after 100% successful transfer, they are deleted on the source.
In other words, files are moved from the source to the target. If
a certain file is not transferred in full, it is not deleted on
the source. You can create a hot-folder sync task that is configured
c:\OutBox -> ftp.yourserver.com/InBox
And all files found in the c:\InBox (and its subfolders), are moved
to the remote /InBox. The sync task can also be set up in reverse:
ftp.yourserver.com/OutBox -> c:\InBox
file synchronization (bi-directional)
New files are transferred in both directions. The file date stamps
are used for comparison. BatchSync will adjust server file dates
using server time-zone settings for proper time comparisons.
smart change tracking
When synchronizing files over the FTP protocol, file comparison
is much more difficult than when doing local file syncs. This is
because all of the file dates change when files are transferred,
due to FTP protocol limitations. Similarly, text/html/ascii file
sizes change when these types of files are transferred, due to file
system differences. This raises a problem, as there is no way to
directly compare local files to FTP server files, as they all look
like they have been changed.
The solution to this problem is SyncDB. The SyncDB feature tracks
these changes and allows BatchSync to accurately transfer only those
files that have really changed.
Without SyncDB, consider the effect on a large web site, where
possibly 10,000 or more html files would be transferred during each
sync, since the file dates and sizes would be changed during the
transfer. Now thanks to SyncDB smart file tracking, only files that
have really changed are transferred, resulting in only a few files
being transferred during each sync.
BatchSync is distributed with two executables: Command line sync
and Sync with GUI, called Task Editor. Command line sync software
is used to run scheduled sync tasks, and it can also be used to
run tasks via batch files, or directly from other software.
as a service
Sync tasks are scheduled using the standard Windows task scheduler.
This allows you to run sync tasks as a service, when nobody is logged
onto the computer. You can also use other task scheduler software,
like Microsoft SQL Executive Task Manager for automating the task
Editor software with Sync Preview
The Task Editor is an easy to use tool for creating, editing, and
running the sync tasks. It also has a sync preview feature, which
displays sync results without actually transferring any files. This
preview feature is a great tool for testing and fine-tuning the
sync task filters and options.
BatchSync supports up to 25 simultaneous browsing and file transfer
threads. This will greatly increase the performance of the file
BatchSync accelerates the file transfers with on-the-fly file compression
using the MODE Z command.
You can specify multiple include and exclude filters for each task.
Filters can use file/folder names, file size, date, and attributes,
and can utilize regular expressions for powerful control over filters.
File name filters can be used within a specific sub folder, set
of sub folders, or for all folders.
BatchSync can detect conflicts (=file has changed on both source
and target) and you can specify the action to take in conflicts,
like skipping a file, skip and report, always upload, etc.
folders and symbolic links
You have an option to ignore subfolders (no recursion to subfolders)
and also ignore symbolic links. Specific folders & symbolic
links can also be excluded with filters.
reconnects, retries, and resumes
The number of reconnects, retries, and timeouts can be specified
individually for each task. You can also use unlimited retries.
Software will automatically continue (=resume) the transfer at the
exact point of failure, rather than starting from the beginning
of the file each time. When reaching the maximum limit for retries,
you can be notified via log files and email notifications (more
Each task can be set up to send emails on successful and/or failed
syncs. You can specify multiple recipients for the notifications.
Emails are sent using the standard SMTP server protocol.
logging with auto-rotate schemes
You can generate up to four different log files for each run of
the sync task. The log files are: Transfer history log (a shared
summary log file for all sync tasks), FTP command log, a log listing
the files transferred, and an error log.
There are various auto-rotation schemes available for log files.
As an example, you could set it up so that a log file is rotated
when its size reaches 10MB. Or arrange to have a new log file created
every day or every week, etc.
Edition adds support for FTPS and SFTP over SSH2
If you require security for your file synchronization, the BatchSync
Secure Edition adds support for the FTPS protocol (also called
FTP over SSL and FTP/S) and for the SFTP subsystem over the SSH2
Related Information and Products
Try BatchSync yourself. Free 30-day trial
is available here.