XS Server P2P Cache: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
 
No edit summary
Line 1: Line 1:
This is a description of an ideal distributed caching system for a School.
This is a description of an "ideal" distributed caching system for a [[School server]].


While it has been suggested numerous times to build this distributed cache out of student laptops, the storage available on each laptop is currently limited. This will only increase, however, and such a fully distributed cache will eventually be feasible.
While it has been suggested numerous times to build this distributed cache out of student laptops, the storage available on each laptop is currently limited. This will only increase, however, and such a fully distributed cache will eventually be feasible.

Revision as of 07:38, 16 February 2007

This is a description of an "ideal" distributed caching system for a School server.

While it has been suggested numerous times to build this distributed cache out of student laptops, the storage available on each laptop is currently limited. This will only increase, however, and such a fully distributed cache will eventually be feasible.

These are still just ramblings, feel free to interject. I am leaning toward forgoing any distributed caching (even between servers in a school) over the next year.

Is a distributed cache worthwhile ?

In the meantime, we look primarily at the number of school servers available in a typical school (2 to 15), and the power of aggregating their cache storage instead of duplicating it. This question is better phrased as:

Will N independent caches (slightly more local to the request) perform as well
as a single cache N times larger.

In our case, the requests on each classroom server will be strongly correlated (related to the lesson plan for those classes). There will be correlations across Classroom servers (common topics such as sports, history, science) but unless there are enough students at each age level that multiple servers (caches) are used to support them, this correlation should be secondary.

Implementation Details

The HTTP request for the document must be converted to a distributed lookup. I would prefer to keep the browser as the primary client, and hide the details of the distributed cache in the network.

It doesn't help that all network traffic for a school will converge on a single server before uplinking, as the storage is still distributed around the school.