RSync - Use Cases

Jakob Jenkov
Last update: 2014-05-23

Here is a list of possible use cases for RSync:

  • Backup of data
  • Restoring backed up data
  • Resumable upload
  • Resumable download
  • Incremental Versioning

The primary use case for RSync is to backup data from clients to a server. Of course this use case also includes restoring the data if necessary.

A secondary use case for RSync would be to implement resumable uploads and downloads. If you start a file upload via RSync, and the connection fails halfway through the file, you can resume the upload by pretending to RSync the same file again. RSync will then compare the full file on the client, to the half file on the server, and find that the last half is missing, and start sending the second half of the file. The same is true for downloads.

You could also use RSync to implement incremental file versioning. By incremental file versioning I mean keeping different versions of the same file, but rather than keeping the full version of each file, you could just keep the RSync merge instructions needed to go from one file version to another. Thus, you just keep the "incrementation" from one version to another.

Jakob Jenkov

Featured Videos

Java ForkJoinPool

P2P Networks Introduction


Java Persistence
Close TOC
All Tutorial Trails
All Trails
Table of contents (TOC) for this tutorial trail
Trail TOC
Table of contents (TOC) for this tutorial
Page TOC
Previous tutorial in this tutorial trail
Next tutorial in this tutorial trail