Module machi_flu1

The Machi FLU file server + file location sequencer.

Description

The Machi FLU file server + file location sequencer.

This module implements only the Machi FLU file server and its implicit sequencer. Please see the EDoc "Overview" for details about the FLU as a primitive file server process vs. the larger Machi design of a FLU as a sequencer + file server + chain manager group of processes.

For the moment, this module also implements a rudimentary TCP-based protocol as the sole supported access method to the server, sequencer, and projection store. Conceptually, those three services are independent and ought to have their own protocols. As a practical matter, there is no need for wire protocol compatibility. Furthermore, from the perspective of failure detection, it is very convenient that all three FLU-related services are accessed using the same single TCP port.

The FLU is named after the CORFU server "FLU" or "FLash Unit" server.

TODO There is one major missing feature in this FLU implementation: there is no "write-once" enforcement for any position in a Machi file. At the moment, we rely on correct behavior of the client & the sequencer to avoid overwriting data. In the Real World, however, all Machi file data is supposed to be exactly write-once to avoid problems with bugs, wire protocol corruption, malicious clients, etc.

Function Index

start_link/1
stop/1

Function Details

start_link/1

start_link(Rest) -> any()

stop/1

stop(Pid) -> any()


Generated by EDoc, Apr 8 2015, 17:31:11.