[mirrorbrain-commits] r8094 - /trunk/docs/configuration.rst

From: <poeml_at_mirrorbrain.org>
Date: Wed, 01 Sep 2010 23:01:07 -0000
Author: poeml
Date: Thu Sep  2 01:01:05 2010
New Revision: 8094

URL: http://svn.mirrorbrain.org/viewvc/mirrorbrain?rev=8094&view=rev
Log:
docs/configuration: 
- document zsync support

Modified:
    trunk/docs/configuration.rst

Modified: trunk/docs/configuration.rst
URL: http://svn.mirrorbrain.org/viewvc/mirrorbrain/trunk/docs/configuration.rst?rev=8094&r1=8093&r2=8094&view=diff
==============================================================================
--- trunk/docs/configuration.rst (original)
+++ trunk/docs/configuration.rst Thu Sep  2 01:01:05 2010
_at_@ -2,13 +2,73 @@
 Configuring MirrorBrain
 =======================
 
-To be written.
+This chapter contains notes about important extra things that you may want to
+configure, and also some more exotic configurations.
 
-For now, please refer to the installation section, which contains most of the
-information.
+For basic configuration, please refer to the installation section.
 
 
 
+.. Generating Torrents
+.. -------------------
+
+
+
+.. _configuring_zsync_generation:
+
+Configuring zsync support
+-------------------------
+
+The `zsync distribution method <http://zsync.moria.org.uk/>`_ resembles rsync
+over HTTP, so to speak, and is a very bandwidth-efficient way to synchronize
+changed individual files; at the same time, it is very scalable, because the
+main work is not done at the server (as with rsync), but distributed to the
+clients. 
+
+Normally, zsync metadata needs to be generated manually and saved in form of
+.zsync files next to the real files.
+
+MirrorBrain however has support for generating the required checksums, and
+can serve the zsync files generated on-the-fly. The files reflect the "simpler"
+zsync variant, which doesn't look into compressed content. It is compatible to,
+and was tested with, the current zsync release (0.6.1).
+
+.. note::
+   This feature is off by default, because Apache can allocate large amounts of
+   memory for large rows from database. This may or may not affect you; and it
+   may be worked around in the future.
+
+To activate zsync support, you need to switch on the generation of the special
+zsync checksums. That is done like shown below in the MirrorBrain instance
+section into :file:`/etc/mirrorbrain.conf`::
+
+        [general]
+        # not here!
+
+        [your mb instance]
+        dbuser = ...
+        ...
+        zsync_hashes = 1
+
+
+This will cause :program:`mb makehashes` generate the zsync checksums and store
+them into the database. See :ref:`creating_hashes` for more info on this tool.
+This tool needs to be run periodically, or after known changes in the file
+tree, to update the checksums.
+
+.. note::
+   For the fastest possible checksumming, the algorithm is implemented in C
+   (zsync's own "rsum" checksum) and integrated via a C Python extension.
+
+If mirrors are available for a file, MirrorBrain adds them into the zsync as
+URLs where missing data can be downloaded. zsync-0.6.1 requires real mirrors as
+URLs, not one URL that redirects to mirrors. It is noteworthy in this context
+that zsync client (as of 0.6.1) tries the provided URLs in random order. Thus,
+the listed URLs are restricted to the ones that are closest. Thereby, the zsync
+client will use nearby mirrors to download data from.
+
+If no mirrors are available, a valid zsync is still generated. The content will
+then be delivered directly by MirrorBrain.
 
 
 




_______________________________________________
mirrorbrain-commits mailing list
Archive: http://mirrorbrain.org/archive/mirrorbrain-commits/

Note: To remove yourself from this list, send a mail with the content
 	unsubscribe
to the address mirrorbrain-commits-request_at_mirrorbrain.org
Received on Wed Sep 01 2010 - 23:01:12 GMT

This archive was generated by hypermail 2.3.0 : Mon Feb 20 2012 - 23:47:04 GMT