Distributed Systems Principles and Paradigms - Maarten van Steen
Processes3.4 Servers18 / 34Servers and stateStateless serversNever keep accurate information about the status of a client after havinghandled a request:Don’t record whether a file has been opened (simply close it again afteraccess)Don’t promise to invalidate a client’s cacheDon’t keep track of your clientsConsequencesClients and servers are completely independentState inconsistencies due to client or server crashes are reducedPossible loss of performance because, e.g., a server cannot anticipateclient behavior (think of prefetching file blocks)
Processes3.4 Servers18 / 34Servers and stateStateless serversNever keep accurate information about the status of a client after havinghandled a request:Don’t record whether a file has been opened (simply close it again afteraccess)Don’t promise to invalidate a client’s cacheDon’t keep track of your clientsConsequencesClients and servers are completely independentState inconsistencies due to client or server crashes are reducedPossible loss of performance because, e.g., a server cannot anticipateclient behavior (think of prefetching file blocks)