Folk Memory

A Minimalist Architecture for Adaptive Federation of Object Servers

by Ward Cunningham
first published June 20, 1997 pdf

This memo describes an adaptive architecture for federating peer object servers. Both the architecture and its implementations are called Folk Memory. This term alludes to the social process by which folk tales or folk songs are remembered and propagated within a culture.

The folk servers, like people within a culture, share their interests with their associates and associate with those who share their interests. Folk servers stream domain objects over simultaneous connections to peers dynamically chosen to shorten access to the authoritative sources for objects deemed interesting.

Conflicts are resolved by a collective process that may not settle to identical state in all parts of a network. Folk memory favors scaleability and robustness over accuracy and determinism.

Folk Principles guiding the thought and design.

Folk Concepts for modules and algorithms.

Folk Heuristics that manage resources.

Folk Applications that favor scale and robustness.

Folk Related Work from which we draw inspiration.

Author's Note: This is the original work except for transition paragraphs between pages, updating hyperlinks and one spelling correction. I'm happy for this version to be release by creative commons.