
:max_bytes(150000):strip_icc()/Untitledpicture-5ad3e5e11f4e1300388b2df3.png)
Obviously this procedure can place a significant strain on the server's resources if the server needs to handle many users, and thus is not scalable. That is, when a client requests for a file sync, the server needs to perform block-by-block checksum computation and search for blocks not available on the client. The problem with rsync, however, is that all the heavy duty computations is done at the server side.

These kinds of full-blown solutions with built-in GUI require users to install a dedicated client, and thus may be an overkill for simple file distribution that you are looking for.īarring full-blown third-party software like these, perhaps rsync may come to mind, which can do bandwidth-efficient file sync. In these cases, how would you distribute incrementally updated files efficiently for multiple users? In fact, there are open-source storage solutions that come with "delta sync" capability built-in, such as ownCloud or Syncthing. Similar situations are encountered when you want to set up a download archive which allows incremental sync for users.

Users will also be happy as they don't have to wait to re-download the whole thing. In this case you may want to enable differential downloads, so that users can download only difference between two builds, thereby saving on the server's bandwidth. Every day you make a new build, users have to re-download the updated build to evaluate it. Suppose you as a software developer has set up daily builds of your software for testing purposes. How to enable incremental file sync for many users on Linux
