Skip to main content

Qu'est-ce que la cohérence éventuelle?

La cohérence éventuelle est un modèle de programmation dans lequel les programmeurs font l'hypothèse que sur une période de temps suffisamment longue et sans modifications d'un système, la version actuelle d'un programme particulier se distribuera finalement jusqu'à ce que chaque réplique du programme soit cohérente.Le concept de cohérence éventuelle est utilisé dans les méthodes de programmation telles que la réplication optimiste, la mémoire partagée distribuée et les transactions distribuées.En ce qui concerne les bases de données, la cohérence éventuelle est atteinte à travers un processus en trois étapes.Premièrement, les informations distribuées sont mises à disposition sur le système;Ceci est suivi d'un état doux, dans lequel différents utilisateurs peuvent encore travailler avec différentes versions des données;et enfin la cohérence est obtenue, et tous les ordinateurs ont accès à des données identiques.

L'une des façons les plus visibles de la cohérence éventuelle est appliquée avec les mises à jour logicielles distribuées en ligne.Pendant les premières secondes après la publication d'une mise à jour, personne ne l'a;Pas assez de temps s'est écoulé pour que les utilisateurs du logiciel puissent télécharger et installer la mise à jour.Ceci est l'état disponible;La mise à jour existe, mais n'a pas encore été distribuée.Au fil du temps, alors que les utilisateurs téléchargent la mise à jour, certains l'auront et d'autres non.Une fois suffisamment de temps, cependant, tous ceux qui utilisent le logiciel seront mis à jour vers la dernière version.Il s'agit de la prémisse derrière l'état de cohérence éventuelle: étant donné suffisamment de temps, toute mise à jour se propagera pleinement dans le système.

Comme le système travaille à une cohérence éventuelle, les conflits sont inévitables.Ceux-ci se produisent lorsque la version du programme ou les informations actuellement sur l'ordinateur ne correspondent pas à la version modèle du programme.Les programmes sont généralement mis en place pour reconnaître ces conflits et les gérer.Lorsque les fichiers d'un ordinateur spécifique sont plus anciens que la dernière version du modèle du logiciel ou des données en question, le système incitera généralement l'utilisateur à lancer une mise à jour pour résoudre la disparité.

Trois méthodes possibles sont disponibles pour effectuer ces résolutions: rédiger la réparation, lire la réparation et réparation asynchrone.Ces méthodes apportent toutes la version du programme ou des données conformément au modèle cohérent.La principale différence entre celles-ci concerne la manière dont le système chronométre l'opération de réparation.Toutes ces opérations ont des avantages et des inconvénients.

Dans une réparation d'écriture, les modifications du code stockées sur l'ordinateur sont effectuées lors d'une opération d'écriture, lorsque l'ordinateur écrit déjà quelque chose au disque dur des systèmes.Cela répare l'incohérence, apportant le programme ou les données conformément au modèle, mais il ralentit également temporairement l'opération d'écriture d'origine.Pour une réparation de lecture, l'opération corrective se produit pendant un cycle de lecture du disque dur.Ceci, à son tour, ralentit l'opération de lecture.En réparation asynchrone, la réparation a lieu lorsque ni une opération de lecture ni d'écriture ne se produisent, conduisant à la consommation de cycles de ralenti sur le CPU.