You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jun 27, 2022. It is now read-only.
**WARNING:** This code is very immature, likely buggy and a subject to change. It would be great if it saw some testing
7
-
from people other than me, however if you use it for anything serious and it breaks - you get to keep both pieces.
6
+
**WARNING:****DO NOT USE IT WITH IMPORTANT AND/OR NOT BACKED UP DATA**. This code is of beta quality. I am fairly
7
+
certain it will not corrupt your data. Code was fuzz-tested for weeks without failures and is in use in a live
8
+
environment with rather small (few hundred) users without issues. However, you never know.
8
9
9
10
rsync has become a synonym to efficient data synchronization. There are few issues however: server does heavy lifting
10
11
and GPL license.
@@ -56,6 +57,34 @@ As you can see from diagram above process of synchronizing data is composed of t
56
57
2. Delta calculation: Client obtains the list of block hashes, then calculates a rolling checksum on the local file. Using rolling checksum and list of remote file hashes algorithm determines what file parts need to be kept/copied/downloaded. Local file data will be reused as much as possible.
57
58
3. Patching: Using a calculated delta map blocks in local file are rearranged much like a puzzle pieces, missing pieces are downloaded.
58
59
60
+
### Example
61
+
62
+
Project comes with a testing tool `zinc` which is used mainly for debugging. Tool is reading and writing local files.
63
+
Example below was performed in tmpfs, ISO files were about 500MB and tested CPU was i7-6800K (6 core / 12 thread). Due
64
+
to tmpfs you may consider test timing results as benchmark of core algorithm as file reading/writing basically happened
0 commit comments