]> Sergey Matveev's repositories - public-inbox.git/commitdiff
doc: add notes on scalability
authorEric Wong <e@80x24.org>
Tue, 15 Apr 2014 02:38:07 +0000 (02:38 +0000)
committerEric Wong <e@80x24.org>
Tue, 15 Apr 2014 02:38:07 +0000 (02:38 +0000)
Fortunately, most mailing lists will never grow too large.

Documentation/design_notes.txt

index f81a616f9fa4ce8dd6dd23c9b0273197e21d3478..286f35c0cd0ce37a030755a093e234cfb38c14da 100644 (file)
@@ -128,6 +128,20 @@ Web notes
 * Raw text endpoint allows users to write client-side JS endpoints
   without hosting the data themselves (or on a different server).
 
+Scalability notes
+-----------------
+
+Even with shallow clone, storing the history of large/busy mailing lists
+may place much burden on subscribers and servers.  However, having a
+single (or few) refs representing the entire history of a list is good
+for small lists since it's easier to lookup a message by Message-ID, so
+we want to avoid splitting refs with independent histories.
+
+ssoma will likely grow its own builtin ref rotation system based on
+message count (not rotating at fixed time intervals).  This would
+split the histories and require O(n) lookup time based on Message-ID,
+where `n' is the number of history splits.
+
 Copyright
 ---------
 Copyright 2013, Eric Wong <normalperson@yhbt.net> and all contributors.