Les comportements des systèmes distribués sont étudiés depuis les années 1970, depuis l’arrivée des premiers processeurs multicœur.
Dans ce contexte il semblait essentiel de pouvoir répartir une tâche entre plusieurs acteurs de manières asynchrone afin d’accroitre les performances sur une unique tâche.
Ainsi Lamport définit un modèle de cohérence qu’il nomme “séquentiel”. Il présente la séquentialité de la manière suivante : une tâche est décomposable en un ensemble finit d’opération atomique. S’il est possible de réordonner ces opérations de façon à ce que leur remaniement séquentiel émette des résultats indiscernables pour un opérateur extérieur par rapport à l’exécution séquentielle non-distribuée. Alors la cohérence atteinte par ce système peut être appelée séquentiel.
Aujourd’hui nous savons que cette approche nécessite de garder une synchronicité forte entre les acteurs [REF].
La difficulté à préserver cette synchronicité croit considérablement avec le nombre d’acteur et le temps de transmission de l’information. L’usage d’une approche séquentiel sur des applications visant à faire travailler des acteurs distants à travers un réseau mondial tel qu’internet semble à ce titre loin d’être efficace. Restreignant les applications dans un dilemme, nécessitant de choisir entre un usage hautement interactif mais excluant les nœuds les plus lents du réseau, ou permettant à l’ensemble des noeuds de participer au prix d’une très grande latence pour l’ensemble du réseau.
% Parallèle édition collaborative synchrone VS git

Néanmoins là ou l’approche séquentiel est la seule fournissant une cohérence absolue dans la gestion des données du point de vue général et du point de vue de l’utilisateur.
Il est possible d’accepter une perte de cette cohérence partielle ou total afin de gagner en performances sur des applications à grande échelle.
Ce compromis entre cohérence et performances est l’objet de ce document qui vise à faire un état du paysage des différentes approches et solutions existantes, en définissant les cas d’usages associés.