Article de reference

Opération de compensation

( Découvrez comment et quand supprimer ce message ) L'exécution d'un processus métier consiste en une ou plusieurs transactions . Chaque transaction peut être constituée de plus...

( Découvrez comment et quand supprimer ce message )

L'exécution d'un processus métier consiste en une ou plusieurs transactions . Chaque transaction peut être constituée de plusieurs opérations individuelles, mais dans son ensemble, elle fait évoluer le système entre des états cohérents.

Il existe deux groupes de systèmes dans lesquels une transaction compensatoire peut être appliquée :

1. Dans le contexte d'une base de données, cela est souvent facilement réalisé à l'aide de transactions et du mécanisme de validation / annulation . de transaction compensatoire pourrait être implémentée en complément de la base de données prenant en charge la validation/annulation. Dans ce cas, nous pouvons réduire la granularité des transactions commerciales.

2. Pour les systèmes sans mécanisme de validation/annulation, il est possible d'annuler une transaction ayant échoué à l'aide d'une transaction compensatoire , ce qui ramènera le système à son état initial. En général, il s'agit simplement d'une solution de contournement qui doit être implémentée manuellement et qui ne peut pas garantir que le système se termine toujours dans un état cohérent. Le concepteur du système peut avoir besoin de réfléchir à ce qui se passe si la transaction compensatoire échoue également.

Les transactions de compensation sont également utilisées dans le cas où une transaction est de longue durée (communément appelées transactions Saga ), par exemple dans un processus métier nécessitant une saisie utilisateur. Dans de tels cas, les données seront enregistrées dans un stockage permanent, mais il faudra peut-être les annuler ultérieurement, peut-être parce que l'utilisateur a choisi d'annuler l'opération. Contrairement aux annulations conventionnelles, une logique métier spécifique sera généralement requise pour annuler une transaction de longue durée et restaurer le système à son état d'origine. Ce type de transaction diffère des transactions distribuées (souvent implémentées à l'aide du protocole de validation en deux phases ), car bien que les deux types de transactions puissent entraîner la mise à jour de plusieurs magasins de données, les transactions de compensation permettent aux mises à jour de s'étendre sur une longue période.

Les transactions de compensation sont souvent conçues dans des services Web qui participent à l’exécution de processus métier faisant partie d’une solution d’architecture orientée services .

Notez que les transactions compensatoires ne fonctionnent pas toujours.

Plus d articles de Worldlex Wiki

Revenez a l index pour explorer davantage de pages sur l histoire, la science, la culture, la geographie et la societe en francais.

Explorer l index